前端基础之《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,把这个死代码摇掉

相关推荐
恋猫de小郭1 小时前
AndroidX 将引入有全新 AppState ,用于管理 Compose 状态
android·前端·flutter
别问,问就是菜鸡1 小时前
阿里云效前端流水线自动化部署
前端·阿里云·自动化·持续部署
燐妤1 小时前
前端HTML编程4:深入学习CSS
前端·学习·html
2301_816374331 小时前
服务访问的用户认证
前端·网络
XS0301061 小时前
从浏览器到互联网的完整数据流
前端·数据库·servlet·交互
hhb_6181 小时前
MATLAB数值计算与数据可视化核心技术梳理及实战应用案例解析
前端
lichenyang4531 小时前
从零理解微前端:基于 React + Vite + qiankun 的子应用切换 Demo
前端·react.js·状态模式
2601_957780842 小时前
AI智能体时代:为什么HTML正在取代Markdown成为新一代输出标准
大数据·前端·人工智能·gpt·html·claude
2301_815279522 小时前
如何实现C++ Web 自动化测试实战:常用函数全解析与场景化应用指南
开发语言·前端·c++