当前位置: 代码网 > it编程>编程语言>Javascript > vue2路由表中异步加载组件命名方式

vue2路由表中异步加载组件命名方式

2024年07月03日 Javascript 我要评论
vue2路由表中异步加载组件命名在vue2中,路由表中引入组件时,可以使用动态导入(dynamic import)的方式来异步加载组件,以提升页面加载速度和降低初始加载的体积。在这种方式下,会配合这种

vue2路由表中异步加载组件命名

在vue2中,路由表中引入组件时,可以使用动态导入(dynamic import)的方式来异步加载组件,以提升页面加载速度和降低初始加载的体积。

在这种方式下,会配合这种注释 /* webpackchunkname: “” / 来对异步加载的组件进行命名。

关于异步加载的组件命名的解释

一、为什么需要使用组件命名

首先,明确一点,如果不使用组件命名不会有什么影响,可以正常进行项目打包,但是webpack将组件打包成一个单独的chunk文件后,该文件会被默认命名为一个数字;这样会影响开发者在调试时无法提供组件包名去定位问题。

同时,这种命名还可以帮助webpack在打包时进行代码分割,也就是将不同的组件打包成不同的chunk文件,以达到更好的性能优化效果。

因此,使用了注释/* webpackchunkname: “” /,也就是组件命名后,webpack会将打包的chunk文件命名为我们自己定义的名称,一般这个名称与我们的组件名称一样,可以方便开发者在调试时定位问题;其次,可以帮助webpack进行代码分割,提高页面加载速度,降低初始加载的项目体积。

二、如何使用组件命名

// ...
const router = new router({
  routes: [
    {
      path: '/home',
      component: () => import(/* webpackchunkname: "home" */ '../views/home.vue'),
      meta: { title: '首页' },
    }
  ]
})
// ...

上面示例中,在路由路径为home的路由中,动态加载对应的页面组件,在import里面添加了组件命名。

vue路由动态异步解析错误

报错

问题

92行报错因为异步加载动态组件,需要解析文件路径,在vue打包中,会把 @/ 这种路径转为相对路径,但是动态组件的话,是打包后,生产环境中是无法解析 @/ 这种语法路径,所以会报错。

解决

把需要异步加载的组件按93行或者94行形式

例如:

return () => import(@/views/${this.compname}.vue)

打包后,会提前解析**@/views@/components**

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com