解决vue动态路由异步加载import组件,加载不到module的问题


Posted in Javascript onJuly 26, 2020

报错信息应该是这样的

webpackEmptyContext (eval at ./src/store/modules sync recursive (0.js:10), <anonymous>:2:10)

路由信息由后端给出,那么前端需要动态加载路由,同时component的路径也是后端给出,但是动态加载该路径会报错

如:

// 假如path = '@/views/user'
const com = () => import(path) // 这样会报错哦
const com2 = () = > import('@/views/user') // 这样写死的字符串就可以

原因应该是在webpack,webpack 编译es6 动态引入 import() 时不能传入变量,因为webpack的现在的实现方式不能实现完全动态。

解决办法:

可以通过字符串模板来提供部分信息给webpack,例如import(`@/${path}`), 这样编译时会编译所有@/views下的模块,但运行时确定path的值才会加载,从而实现懒加载。

如果写了@给webpack还是不能识别,那么可能你需要多些几级的路径,如import(`@/views/${path}`)

补充知识:vue中使用import路由懒加载报错解决方法

解决vue动态路由异步加载import组件,加载不到module的问题

一般情况下都会正常运行,但当我们运行npm run dev时却报错

解决vue动态路由异步加载import组件,加载不到module的问题

原因是import属于异步引用组件,需要babel-loader处理

所以我们需要安装

npm install babel-plugin-syntax-dynamic-import -D

这是用来编译import异步引用方法的模块

然后在.babelrc中引入这个插件

{
“plugin”: [‘syntax-dynamic-import']
}

以上这篇解决vue动态路由异步加载import组件,加载不到module的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
解析arp病毒背后利用的Javascript技术附解密方法
Aug 06 Javascript
检测一个函数是否是JavaScript原生函数的小技巧
Mar 13 Javascript
jQuery实现在列表的首行添加数据
May 19 Javascript
Validform表单验证总结篇
Oct 31 Javascript
JavaScript 最佳实践:帮你提升代码质量
Dec 03 Javascript
JS中SetTimeout和SetInterval使用初探
Mar 23 Javascript
webpack配置的最佳实践分享
Apr 21 Javascript
JS实现图片预览的两种方式
Jun 27 Javascript
Angular中支持SCSS的方法
Nov 18 Javascript
angular 实现的输入框数字千分位及保留几位小数点功能示例
Jun 19 Javascript
详解使用angular框架离线你的应用(pwa指南)
Jan 31 Javascript
Vue基础学习之项目整合及优化
Jun 02 Javascript
vue 动态设置img的src地址无效,npm run build 后找不到文件的解决
Jul 26 #Javascript
VUE动态生成word的实现
Jul 26 #Javascript
Element Dialog对话框的使用示例
Jul 26 #Javascript
在vue中使用防抖函数组件操作
Jul 26 #Javascript
Vue 中使用lodash对事件进行防抖和节流操作
Jul 26 #Javascript
浅谈vue中document.getElementById()拿到的是原值的问题
Jul 26 #Javascript
关于vue 结合原生js 解决echarts resize问题
Jul 26 #Javascript
You might like
PHP下一个非常全面获取图象信息的函数
2008/11/20 PHP
PHP jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图
2017/05/15 PHP
PHP设计模式之原型模式定义与用法详解
2018/04/03 PHP
Jquery操作Select 简单方便 一个js插件搞定
2009/11/12 Javascript
利用JS自动打开页面上链接的实现代码
2011/09/25 Javascript
vue实现单选和多选功能
2017/08/11 Javascript
js封装成插件的步骤方法
2017/09/11 Javascript
不到200行 JavaScript 代码实现富文本编辑器的方法
2018/01/03 Javascript
.vue文件 加scoped 样式不起作用的解决方法
2018/05/28 Javascript
Vue中全局变量的定义和使用
2019/06/05 Javascript
Jquery Datatables的使用详解
2020/01/30 jQuery
nuxt引入组件和公共样式的操作
2020/11/05 Javascript
python删除列表内容
2015/08/04 Python
Python中getattr函数和hasattr函数作用详解
2016/06/14 Python
Python如何为图片添加水印
2016/11/25 Python
详解python实现线程安全的单例模式
2018/03/05 Python
对Python闭包与延迟绑定的方法详解
2019/01/07 Python
python3.5安装python3-tk详解
2019/04/26 Python
详解Python中的测试工具
2019/06/09 Python
利用Python实现手机短信监控通知的方法
2019/07/22 Python
Django CBV类的用法详解
2019/07/26 Python
python如何支持并发方法详解
2020/07/25 Python
Python实现京东抢秒杀功能
2021/01/25 Python
python 高阶函数简单介绍
2021/02/19 Python
CSS3 mask 遮罩的具体使用方法
2017/11/03 HTML / CSS
资生堂美国官网:Shiseido美国
2016/09/02 全球购物
俄罗斯皮肤健康中心:Pharmacosmetica.ru
2020/02/22 全球购物
即兴演讲稿
2014/01/04 职场文书
校园安全教育广播稿
2014/02/17 职场文书
团购业务员岗位职责
2014/03/15 职场文书
2014年巴西世界杯口号
2014/06/05 职场文书
新闻稿件写作范文
2015/07/18 职场文书
2016年社区中秋节活动总结
2016/04/05 职场文书
使用Html+Css实现简易导航栏功能(导航栏遇到鼠标切换背景颜色)
2021/04/07 HTML / CSS
Python基于Tkinter开发一个爬取B站直播弹幕的工具
2021/05/06 Python
SQL 尚未定义空闲 CPU 条件 - OnIdle 作业计划将不起任何作用
2021/06/30 SQL Server