《玩转webpack》 第三章 基础篇 Webpack 进阶用法
'[name][chunkhash:8].js', path: __dirname + '/dist' }, plugins: [ + new CleanWebpackPlugin() }; 避免构建前每次都需要⼿手动删除 dist 使⽤用 clean-webpack-plugin ·默认会删除 output 指定的输出⽬目录 CSS3 的属性为什什么需要前缀? Trident(-ms) Geko(-moz) module:包含loader的sourcemap source map 类型 基础库分离 ·思路路:将 react、react-dom 基础 包通过 cdn 引⼊入,不不打⼊入 bundle 中 ·⽅方法:使⽤用 html-webpack- externals-plugin 利利⽤用 SplitChunksPlugin 进⾏行行公共脚本分离 Webpack4 内置的,替代CommonsChunkPlugin插件 ]/, priority: -10 } } } } }; · async 异步引⼊入的库进⾏行行分离(默认) · initial 同步引⼊入的库进⾏行行分离 · all 所有引⼊入的库进⾏行行分离(推荐) 利利⽤用 SplitChunksPlugin 分离基础包 test: 匹配出需要分离的包 module.exports = { optimization: { splitChunks:0 码力 | 69 页 | 4.33 MB | 1 年前3《玩转webpack》第五章 进阶篇: webpack 构建速度和体积优化策略
unknown=polyfill&features=Promise,Map,Set 体积优化策略总结 Scope Hoisting Tree-shaking 图片压缩 动态 Polyfill 公共资源分离0 码力 | 36 页 | 8.13 MB | 1 年前3《玩转webpack》第六章 原理篇: 通过源码掌握 webpack 打包原理
重复上面的过程,直至得到所有的 chunks 模块化:增强代码可读性和维护性 传统的网页开发转变成 Web Apps 开发 代码复杂度在逐步增高 部署时希望把代码优化成几个 HTTP 请求 分离的 JS文件/模块,便于后续代码的维护性 常见的几种模块化方式 CJS ES module AMD import * as largeNumber from 'large-number';0 码力 | 39 页 | 3.66 MB | 1 年前3《玩转webpack》第八章 实战篇: React 全家桶 和 webpack 开发商城项巨
实战篇:React 全家桶 和 webpack 开发商城项⽬目 08 基础篇:webpack 进阶⽤用法 03 扫码试看/订阅 《玩转 webpack》视频课程 商城技术栈选型 前端 后端 商城架构设计 平台层 ⾸首⻚页 列列表⻚页 购物⻋车⻚页 商品管理理 订单管理理 ⽤用户端 管理理后台 服务层 基础设施 商品服务 订单服务 购物⻋车服务 搜索服务 ⽀支付服务 评论服务0 码力 | 25 页 | 5.67 MB | 1 年前3Gulp 入门指南
└── js/ │ └── a.js └── dist/ └── js/ └── a.js gulp 入门指南 - 1 - 本文档使用 看云 构建 a.js 压缩前 function demo (msg) { alert('--------\r\n' + msg + '\r\n--------') } demo('Hi') a.js 压缩后 function expected punc «,» plugin: gulp-uglify gulp-sourcemaps gulp 入门指南 - 28 - 本文档使用 看云 构建 JS 压缩前和压缩后比较 // 压缩前 var log = function (msg) { console.log('--------'); console.log(msg) console.log('--------'); ['watchjs','watchcss']) gulp-autoprefixer autoprefixer 解析 CSS 文件并且添加浏览器前缀到CSS规则里。 通过示例帮助理解 autoprefixer 处理前: .demo { display:flex; } autoprefixer 处理后: .demo { display:-webkit-flex; display:-ms-flexbox;0 码力 | 36 页 | 275.87 KB | 1 年前3《玩转webpack》第七章 原理篇: 编写 Loader 和插件
{ return source; }; 定义:loader 只是一个导出为函数的 JavaScript 模块 多 Loader 时的执行顺序 多个 Loader 串行执行 顺序从后到前 module.exports = { entry: './src/index.js', output: { filename: 'bundle.js',0 码力 | 29 页 | 4.37 MB | 1 年前3
共 6 条
- 1