-
Beta Was this translation helpful? Give feedback.
Answered by
zouyaoji
Apr 2, 2024
Replies: 1 comment
-
是这样哈,vue-cesium加载Cesium.js实际上是动态script标签加上去的,所以按你代码在setup中使用Cesium说找不到,因为还没初始化好呢。3个办法呢。 推荐3。 |
Beta Was this translation helpful? Give feedback.
0 replies
Answer selected by
zenghaiy
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
是这样哈,vue-cesium加载Cesium.js实际上是动态script标签加上去的,所以按你代码在setup中使用Cesium说找不到,因为还没初始化好呢。3个办法呢。
1、在vc-viewer的cesiumReady事件后去初始化Cesium的原生对象。但Cesium的原生对象,尤其是是一些复杂的对象,不建议用ref初始化,会比较好性能,用shallowRef都要好一点。
2、直接把CesiumJS和它的样式文件在index.html中引入,这样全局就有CesiumJS了。
3、像Cesium.UrlTemplateImageryProvider等已经封装成组件的https://zouyaoji.top/vue-cesium/#/zh-CN/component/providers/vc-imagery-provider-urltemplate 可以直接用现成组件传url,ref只需要写一个字符串即可,性能开销小。
推荐3。