lodash 在 vue3+vite 中按需加载
问题描述:lodash 全量加载,它打包后文件较大 100kb 左右
问题现象:项目中使用了大约十个 lodash 方法,但由于全局加载 lodash 而导致打包后,单 lodash 文件就 100kb 左右,因而需要优化
复制代码
优化方式:按需加载,按需加载有三种方式,
1.第一种是 lodash-webpack-plugin + babel-plugin-lodash
通过插件在打包时对 lodash 方法实现按需加载但此方法需要下载较多插件
复制代码
如上因而舍弃该方法
2.第二种:
复制代码
这种方式有个问题即无法 import 一次使用多个方法因而使用起来不是很方便
第三种:
复制代码
这种方式即删除 lodash 包下载 lodash-es 包,可实现 import 一次使用多个方法,lodash-es 包只支持 es6 语法,vue3+vite 项目一般情况下同样只支持 es6 语法,因而刚刚好可用该方法,同时注意使用了按需加载就无法再用链式调用了即_.chain 方法,否则按需加载将失去意义。
当然我们也可以在 main.js 中引入按需加载的 lodash 文件如下:
复制代码
注入后只需要在对应组件中使用 proxy._.XXX 即可使用 lodash 中方法了
总结:按需加载方式多种,适合自己的才是最好的
版权声明: 本文为 InfoQ 作者【木叶🐱】的原创文章。
原文链接:【http://xie.infoq.cn/article/3aba9bbb701cd74afa5b66fcb】。文章转载请联系作者。
评论