版本
- vue: ^3.4.21
- vite: ^5.2.8
- yarn: 1.22.22
代码
@huitian/cesium-helper
依赖中CesiumToolbar.vue
的props定义
import CesiumHelper from '../cesium-helper/index.js'
let props = defineProps({
cesiumHelper: { type: CesiumHelper },
});
使用时的代码
import CesiumHelper, {CesiumToolbar} from '@huitian/cesium-helper';
CesiumHelper
是classCesiumToolbar
是vue组件,他的props中定义了参数cesiumHelper
类型为CesiumHelper
在使用时
- 导入的
CesiumHelper
地址是:
http://localhost:8162/use-common/node_modules/@huitian/cesium... - 导入的
CesiumToolbar.props.cesiumHelper.type
地址是:
http://localhost:8162/@fs/D:/work/sts/huitian/LC006/bhd-web/u...
他们本应该是一个类,但实际他们是不同的,这导致了vue警告:Invalid prop: type check failed for prop "cesiumHelper". Expected CesiumHelper, got Object
,不想把CesiumToolbar
的props类型改成Object
,因为类型是已知的
问题
- 请问这是如何造成的?
- 改如何让他们统一成一个类?
Vue Playground
测试了下,并没有复现你说的问题。最好是能多提供一些内容,比如类的构建、组件 props 传递方式相关的代码。