作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我必须在我的 Vue 组件中使用一个名为“OpenSeadragon
”的外部 javascript 库。
但是如何在我的 Vue 组件中加载这个组件呢?在我的父模板中,我加载了库:
<script src="{{ asset('js/openseadragon.min.js') }}"></script>
这是我的 Vue 测试组件:
<template>
<div>
<div id="openseadragon" style="width: 100%; height: 600px; border: 1px solid red"></div>
</div>
</template>
<script>
export default {
data(){
return {
}
},
created() {
// How can I load openseadragon??
OpenSeadragon({
id: "openseadragon",
prefixUrl: "/openseadragon/images/",
tileSources: "/example-images/duomo/duomo.dzi"
});
},
methods: {
//
}
}
</script>
然后我得到这个错误:
[Vue warn]: Error in created hook: "TypeError: Cannot read property 'appendChild' of null"
最佳答案
根据 Vue Lifecycle ,您应该将函数调用放在 mounted
中。
因为 #openseadragon
元素在调用 mounted
之前不存在。
关于javascript - 如何在我的 Vue 组件中加载 OpenSeadragon 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50001973/
我是一名优秀的程序员,十分优秀!