框架篇-面试题3-vue-cli 脚手架编译后,如果存在过大的 js 文件怎么处理?

本文介绍了处理Vue CLI构建后产生过大JS文件的四种方法:将静态库外部引入、配置externals、路由懒加载、剥离文件单独打包及开启压缩。提供了相关插件安装和配置指导,旨在帮助开发者优化项目性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

虽互不曾谋面,但希望能和您成为笔尖下的朋友

以读书,技术,生活为主,偶尔撒点鸡汤

不作,不敷衍,意在真诚吐露,用心分享

点击左上方,可关注本刊

标星公众号(ID:itclanCoder)

如果不知道如何操作

点击这里,标星不迷路

  • 方案1: 把一些不常改变的库放到index.html中,通过cdn的方式引入

<script src="https://unpkg.com/vue@2.5.2/dist/vue.js"></script>
<script src="https://unpkg.com/vue-router@3.0.1/dist/vue-router.js"></script>
<script src="https://unpkg.com/axios@0.18.0/dist/axios.min.js"></script>

然后找到build/webpack.base.config.js文件,在module.exports={}中添加以下代码

externals: {
  'vue': 'vue',
  'element-ui': 'element',
  'axios': 'axios'
}
  • 方案2: 通过路由的懒加载

export default new VueRouter({
  mode: `history`,
  routes: [
    {
      path: '/',
      name: 'Account',
      compontent: (resolve) => require(['@/components/Account'], resolve),
    },
  ],
});
  • 方案3: 剥离css文件,单独打包 安装webpack插件extract-text-webpack-plugin,npm install extract-text-webpack-plguin --save-dev

plugins: [new ExtractTextPlugin('static/css/styles.[contenthash].css')];
  • 方案4: 开启gzip压缩 使用compression-webpack-plugin插件进行压缩 安装npm install compression-webpack --save-dev

const CompressionPlugin = require('compression-webpack-plugin');
plugins: [
  new CompressionPlugin({
    asset: '[path].gz[query]', //目标资源名称。[file] 会被替换成原资源。[path] 会被替换成原资源路径,[query] 替换成原查询字符串
    algorithm: 'gzip', //算法
    test: new RegExp(
      '\\.(js|css)$' //压缩 js 与 css
    ),
    threshold: 10240, //只处理比这个值大的资源。按字节计算
    minRatio: 0.8, //只有压缩率比这个值小的资源才会被处理
  }),
];

如遇到什么问题,也欢迎小伙伴们下方留言,一起学习探讨~

记账就用轻记账



公众号(ID:itclanCoder)

码能让您早脱菜籍,文能让您洗净铅华

  可能您还想看更多:

小程序-云开发-实现生成小程序码


Js篇-面试题12-如何解析 URL 提取 params 参数


Js篇-面试题11-比较下for..of与for..in的区别

Js篇-面试题9-请说一下Js中的事件循环机制

vuepress建站过程中遇到的一些问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值