当前位置:   article > 正文

vite动态引入报错,vite配置vue-router,封装动态导入控制台报错问题_the above dynamic import cannot be analyzed by vit

the above dynamic import cannot be analyzed by vite
  1. const _import = (file: String) => () => import(`@/${file}.vue`)
  2. const routes = [
  3. {
  4. path: '/',
  5. name: 'home',
  6. component: _import('views/home')
  7. },
  8. ]

控制台报错:

The above dynamic import cannot be analyzed by Vite.
See https://github.com/rollup/plugins/tree/master/packages/dynamic-import-vars#limitations for supported dynamic import formats If this is intended to be left as-is, you can use the /* @vite-ignore */ comment inside the import() call to suppress this warning. 

Plugin: vite:import-analysis

或者浏览器控制台报错:

 Unknown variable dynamic import: ../views/home.vue

意思是上面定义使用的_import动态导入函数不能被Vite分析出来,如果一定要这样使用的话,可以使用import ( )调用内部的/ * @ vite-ignore * / 注释来忽略此警告。

随后我用了这个注释后,报错是没有了,但是所需的组件不能动态导入了显示空白。

后来我灵机一动

  1. const _import = (file: String) => () => import(`@/views/${file}.vue`)
  2. const routes = [
  3. {
  4. path: '/',
  5. name: 'home',
  6. component: _import('home')
  7. },
  8. ]

然后组件就成功展示了。。。。。。。。。

why?????

后官网找到import.meta.glob,改写成这样也可以,但是感觉写路径挺麻烦,还是用第一种吧。

  1. const modules = import.meta.glob('@/views/*.vue')
  2. const routes = [
  3. {
  4. path: '/',
  5. name: 'home',
  6. component: modlues['/src/views/home.vue']
  7. },
  8. ]

不过还是很好奇为什么第一种多加个路径就能动态导入,跪求大佬解释!!

-----------------------------------------------------------------

碰巧翻文档翻到了

原来vite只支持一层路径。。。。 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/324722
推荐阅读
相关标签
  

闽ICP备14008679号