本文环境:windows7、vue2.9.6,该方法适用于所有品牌的电脑。
vue.js实现懒加载的方法:
一、为什么需要懒加载
在单页应用中,如果没有应用懒加载,运用webpack打包后的文件将会异常的大,造成进入首页时,需要加载的内容过多,延时过长,不利于用户体验,而运用懒加载则可以将页面进行划分,需要的时候加载页面,可以有效的分担首页所承担的加载压力,减少首页加载用时
二、与webpack配合实现组件懒加载
1、在webpack配置文件中的output路径配置chunkFilename属性output: {
path: resolve(__dirname, 'dist'),
filename: options.dev ? '[name].js' : '[name].js?[chunkhash]',
chunkFilename: 'chunk[id].js?[chunkhash]',
publicPath: options.dev ? '/assets/' : publicPath
},
chunkFilename路径将会作为组件懒加载的路径
2、配合webpack支持的异步加载方法resolve => require([URL], resolve), 支持性好
() => system.import(URL) , webpack2官网上已经声明将逐渐废除, 不推荐使用
() => import(URL), webpack2官网推荐使用, 属于es7范畴, 需要配合babel的syntax-dynamic-import插件使用, 具体使用方法如下
代码如下:npm install --save-dev babel-core babel-loader babel-plugin-syntax-dynamic-import babel-preset-esuse: [{
loader: 'babel-loader',
options: {
presets: [['es', {modules: false}]],
plugins: ['syntax-dynamic-import']
}
}]