前端基础之《React(8)—webpack简介-其他配置》

接上篇......

十六、配置路径别名

1、代码

配置路径别名config.js添加:

javascript 复制代码
    resolve: {
        alias: {
            '@': path.resolve(__dirname, '../', 'src')
        }
    }

十七、文件压缩

1、代码

本地开发时不压缩serve.js添加:

javascript 复制代码
    optimization: {
        minimize: false
    },

打包部署时压缩build.js添加:

javascript 复制代码
    optimization: {
        minimize: true
    },

十八、代码分割技术

1、如果webpack在运行过程中,遇到这样的代码:

比如有个模块dog.js

export default function() {

console.log('---dog')

}

平时加载代码用:

import dog form '@utils/dog.js'

这是同步加载,webpack打包时就会把dog.js代码和app合并在一起,如果dog模块代码非常大,生成的文件就很大

所以要做代码分割(动态导入):

const dog = () => import('@/utils/dog.js')

dog现在是function,现在没有调用,不会引入app.js,会新开一个js文件

调用时:

dog()

动态加载dog.js文件编译后的文件

动态导入技术:

当webpack打包时,只要遇到()=>import()这样的语法,会切割生成一个新的JS文件(chunk)

PS;vue路由懒加载就用到的这个技术

十九、Tree Sharking

1、摇树优化

入口文件main.js,可以理解是树根,main.js和后面所有模块产生树结构的关系

比如在文件中有方法在项目中任何地方都没用到,可以开启tree-sharking,把这个死代码摇掉

相关推荐
花开盛夏^.^4 小时前
电脑打开多个浏览器Web窗口占用较大的运行内存的原因
前端·浏览器
馒头不想说话5 小时前
实体店老板的24小时AI运营员工,写、剪、发全自动,省下一整个团队工资
前端
椒哥7 小时前
一天被问几十次"允许",我统计了 517 次,然后写了个插件
前端·javascript·github
风骏时光牛马8 小时前
生成一个AI稳定性治理及疑难问题分析标题,只需要一个标题,不需要其他的任何文本。
前端
莫西干式秃头8 小时前
用 AI + threejs 写了个浏览器里的 3D 动作游戏《武来》:砍怪、放技能、开 SU7
前端·人工智能·three.js
kyriewen8 小时前
我测了 6 种防请求竞态的写法:只有 1 种真能打
前端·javascript·程序员
孟健8 小时前
用 WorkBuddy 做个人名片网页,挂上开源设计技能后效果完全不同了
前端·人工智能·ai编程
IT_陈寒8 小时前
SpringBoot自动配置的坑,这次终于爬出来了
前端·人工智能·后端
LuHang9 小时前
从天地图切换到高德地图:一次真实的底图迁移实战
前端·vue.js·cesium
用户360055579009 小时前
Kestrel_VLLM - 27 · 寄存器常驻与融合发射:两次「少发一次」
前端