vue路由懒加载的实现方法

本文介绍了vue的路由懒加载,分享给大家,具体如下:

我们可以把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件。

  1. component可以是一个箭头函数,我们可以使用动态 import语法来定义代码分块点;
  2. 如果想在network里面看到动态加载的组件名字,可以加webpackChunkName;
  3. 同时要在webpack.base.conf.js里面的output里面的filename下面加上chunkFileName

代码

component: () => import(/ webpackChunkName: 'home' /'@/pages/Homes')

},{
path: '/todos',name: 'Todos',component: () => import(/ webpackChunkName: 'todo' /'@/pages/Todos')
}
]
})

注意 上面的@代表当前src目录,具体可以去参考webpack的配置

rush:js;"> webpack.base.conf.js里面添加 chunkFilename: '[name].js'

output: {
path: config.build.assetsRoot,filename: '[name].js',// 需要配置的地方
chunkFilename: '[name].js',publicPath: process.env.NODE_ENV === 'production'
? config.build.assetsPublicPath
: config.dev.assetsPublicPath
}

分析

创建了home和todos两个组件使用了路由懒加载,配置好之后我们执行npm run dev来运行项目,打开network之后刷新一下,我们会发现加载了home.js,我们会发现和上面定义的webpackChunkName名字一样,同时点todos会加载todo.js。这就是路由懒加载的简单使用。

其他

在main.js里面项目的入口我们可以使用template的语法,也可以使用render函数

rush:js;"> new Vue({ el: '#app',router,components: { App },/* * 这里使用的template的语法 * 也可以使用render函数,直接return一个html结构 */ // template: '' render() {

return (

) } })

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

相关文章

可以通过min-width属性来设置el-table-column的最小宽度。以...
yarn dev,当文件变动后,会自动重启。 yanr start不会自动重...
ref 用于创建一个对值的响应式引用。这个值可以是原始值(如...
通过修改 getWK005 函数来实现这一点。这里的 query 参数就是...
<el-form-item label="入库类型" ...
API 变动 样式类名变化: 一些组件的样式类名有所变动,可能需...