vue路由import引入,vue路由懒加载和按需加载的区别
本文主要介绍了在Vue中使用import实现路由延迟加载的原理分析。有很好的参考价值,希望对大家有所帮助。如有错误或不足之处,请不吝赐教。
目录
使用导入的路由懒加载原理(1)符合规范(2)调用时间(3)本质vue路由懒加载,使用导入无法解决。
使用import进行路由懒加载的原理
先说一下import和require的区别。
节点编程最重要的思想是模块化,模块化使用了import和require。
(1)遵循规范
Require是AMD规范的引入方法。import是es6的一个语法标准,如果兼容浏览器就必须转换成es5语法。
(2)调用时间
Require是一个运行时调用,所以理论上require可以用在代码中的任何地方。import是一个编译时调用,所以它必须放在文件的开头。
(3)本质
要求是一个分配过程。事实上,require的结果是一个对象、一个数字、一个字符串、一个函数等。将require的结果分配给变量导入是一个解构过程。但是,目前所有的发动机还没有实现进口。我们在node中使用babel来支持ES6,只在执行前将ES6转码为ES5。导入语法将被转码为要求在路由中,我们如何使用懒加载呢?。
导出默认的新VueRouter({
路线:[
{
路径:“/”,
组件:()=导入(./组件/导航器’)
}
]
})
使用route lazy loading的编写方法,只有在进入当前路由时才会取组件,然后通过运行import编译加载相应的组件。
可以理解为也是通过允诺的解决机制。因为Promise函数返回的承诺就是resolve组件本身,而且我们可以使用import来导入组件。
注意:import会返回一个Promise对象。
setTimeout(()={
导入(。/dynamic-data . js’)。然后(res={
console . log(RES . default . message)
})
}, 1500)
//动态数据. js
导出默认值{
消息:“这是消息”
}
vue路由懒加载,使用import无法处理
原因:导入是异步引用组件,需要特殊的babel-loader处理。
解决
npm i巴别-插件-语法-动态-导入-D
介绍中的语法动态导入插件。巴勒克
{
预设:[包络],
插件:[语法-动态-导入]
}
以上个人经历,希望能给大家一个参考,也希望大家多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。