问题表现
切换了个路径下的组件, 导入失败,
尝试了清缓存\重启\删项目等一些列操作均无效
上面两个路径中, 都存在一模一样的videItem.vue
Main
路径是可以导入的
Main
路径是无法导入的
问题原因
后来发现,
是 分包
的问题导致.
我们先来假设一个场景,如果小程序进行了分包操作, 其中有个公共组件需要被各个分包
依赖使用, 那显然我们会将该组件放置在主包
这里的问题就出在了分包,
由于项目刚接手,还未仔细观察分包结构,
这里对于 videoItem
组件的import的父组件vue
,本身是被分包处理了, 他是作为子包存在的(如 HomeSub/index.vue
)
而对于
Mine
: 它是主包
MineSub
:它是子包
此时,我们想要在 HomeSub
这个子包中, import同级别的子报 MineSub/components/videoItem.vue
, 就会出现导入报错失败的提示,
这也说明了, import Mine/components/videoItem.vue
是能成功的原因