《玩转webpack》 第四章 进阶篇: 编写可维护的 webpack 构建配置
webpack 构建配置 04 进阶篇:webpack 构建速度和体积优化策略 05 原理篇:通过源码掌握 webpack 打包原理 06 原理篇:编写 Loader 和插件 07 实战篇:React 全家桶 和 webpack 开发商城项目 08 基础篇:webpack 进阶用法 03 构建配置抽离成 npm 包的意义 可维护性 通用性 质量 ·业务开发者无需关注构建配置 ·统一团队构建脚本 ·统一团队构建脚本 ·构建配置合理的拆分 ·README 文档、ChangeLog 文档等 ·冒烟测试、单元测试、测试覆盖率 ·持续集成 构建配置管理的可选方案 将构建配置设计成一个库,比如:hjs-webpack、Neutrino、webpack-blocks 通过多个配置文件管理不同环境的构建,webpack --config 参数进行控制 抽成一个工具进行管理,比如:create-react-app eact-app, kyt, nwb 将所有的配置放在一个文件,通过 --env 参数控制分支选择 构建配置包设计 通过多个配置文件管理不同环境的 webpack 配置 抽离成一个 npm 包统一管理 ·开发环境:webpack.dev.js ·生产环境:webpack.prod.js ·规范:Git commit日志、README、ESLint 规范、Semver 规范 ·质量:冒烟测试、单元测试、测试覆盖率和0 码力 | 30 页 | 5.38 MB | 1 年前32019-2021 美团技术年货 前端篇
Web 构建产物较简陋,只是简单的输出 main.dart.js(1.1M,未 Gzip) 和 图片等静态资源,缺少 JS 拆包、文件 Hash、资源上传 CDN 等优 化工作,极大影响了页面的加载性能。 ● 由于 Flutter Web 自身实现了一套页面滚动机制,页面滚动过程中,会频繁计 算位置信息,引起滚动区域内容被重新创建,最终导致页面滚动性能较差。 2.2 MTFlutter 有大量的工作(上图黄色部分所示),主要包括: ● 扩展基础依赖(如:Request、Router、埋点等)在 Web 侧的支持。 ● 完善工程化建设,例如:静态资源优化、构建与部署自动化。 ● 深入滚动性能与页面加载性能优化,使得 Flutter Web 能够满足基本的投产要求。 四、详细设计 4.1 基础依赖建设 企业级应用的基础开发依赖 ( 如:请求库、路由库、埋点库等 ),要重新在 Flutter 中 Dart 对齐了 相应的 API,详细架构图如下图所示: 请求库架构图 4.2 性能优化 常规的 Web 项目中,为了保证页面有更好的加载和渲染性能,在静态资源文件的处 理方面,我们需要做很多的工作,例如:资源文件 Hash 化、CDN 化、按需加载处 理等,这些可以通过 Webpack、Rollup 等构建工具进行预处理。但在 Flutter Web 中,这些预处理的操作目前官方还不支持,原因是0 码力 | 738 页 | 50.29 MB | 1 年前3[试读] Angular 5 高级编程
创建项目的 ASP.NET Core MVC 部分..................34 3.3 配置项目...................................35 3.3.1 准备项目(Visual Studio) .......35 3.3.2 创建和编辑配置文件...........36 3.3.3 启用日志消息.....................39 ................71 5.1.2 配置 TypeScript 编译器........72 5.1.3 运行示例项目.....................72 5.2 理解 script 元素........................73 5.2.1 使用 JavaScript 模块 加载器 ........................... ...................148 8.3.1 创建购物车详情和结账 组件................................148 8.3.2 创建和应用路由配置.........150 8.3.3 应用程序导航...................151 8.3.4 守卫路由.........................154 8.40 码力 | 42 页 | 6.14 MB | 1 年前3TypeScript Handbook(中文版)
命名空间 命名空间和模块 模块解析 声明合并 书写.d.ts文件 JSX Decorators 混入 三斜线指令 如何书写声明文件 结构 规范 举例 深入 发布 使用 工程配置 tsconfig.json NPM包的类型 TypeScript Handbook(中文版) 2 5.3 5.4 5.5 5.6 6 6.1 6.2 6.3 6.4 6 ts文件 JSX Decorators 混入 三斜线指令 如何书写声明文件 结构 TypeScript Handbook(中文版) 5 介绍 规范 举例 深入 发布 使用 工程配置 tsconfig.json NPM包的类型 编译选项 在MSBuild里使用编译选项 与其它构建工具整合 使用TypeScript的每日构建版本 Wiki TypeScript里的this work") as HTMLInputElement).value; return `Hello from ${compiler} and ${framework}!`; } 构建设置 配置 TypeScript 编译器 我们先来告诉TypeScript怎样构建。 右击scripts文件夹并选择New Item。 接着选 择TypeScript Configuration File,保持文件的默认名字为0 码力 | 557 页 | 7.48 MB | 1 年前3TypeScript 4.0 使用手册
本文档使用 书栈网 · BookStack.CN 构建 实用工具类型 如何书写声明文件 介绍 库结构 举例 最佳实践 深入 模板 发布 使用 工程配置 tsconfig.json 工程引用 NPM包的类型 编译选项 配置 Watch 在MSBuild里使用编译选项 与其它构建工具整合 使用TypeScript的每日构建版本 Wiki TypeScript里的this 目录 README - 8 - 本文档使用 书栈网 · BookStack.CN 构建 库结构 举例 最佳实践 深入 模板 发布 使用 工程配置 tsconfig.json 工程引用 NPM包的类型 编译选项 配置 Watch 在MSBuild里使用编译选项 与其它构建工具整合 使用TypeScript的每日构建版本 Wiki TypeScript里的this 三斜线指令 JavaScript文件里的类型检查 实用工具类型 如何书写声明文件 介绍 库结构 举例 最佳实践 深入 模板 发布 使用 工程配置 tsconfig.json 工程引用 NPM包的类型 编译选项 配置 Watch 在MSBuild里使用编译选项 与其它构建工具整合 使用TypeScript的每日构建版本 Wiki TypeScript里的this0 码力 | 683 页 | 6.27 MB | 1 年前3electron中文教程
1:8080/debug?ws=127.0.0.1:8080&port=5858 5. 打开 Electron 的调试模式 6. 使用 Electron 开启 node-inspector 服务 7. 加载调试器界面 主进程调试 - 21 - 本文档使用 书栈(BookStack.CN) 构建 引自ChromeDriver - WebDriver for Chrome: WebDriver 是 tom', 10. } 11. }) 12. .forBrowser('electron') 使用 Selenium 和 WebDriver 通过 WebDriverJs 配置 1. 启动 ChromeDriver 2. 安装 WebDriverJS 3. 联接到 ChromeDriver 使用 Selenium 和 WebDriver - 22 - 本文档使用 } 11. } 12. }; 13. 14. var client = webdriverio.remote(options); 通过 WebdriverIO 配置 1. 启动 ChromeDriver 2. 安装 WebdriverIO 3. 连接到 ChromeDriver 使用 Selenium 和 WebDriver - 23 - 本文档使用0 码力 | 203 页 | 2.72 MB | 1 年前3阮一峰 《ECMAScript 6入门》 第三版
Generator 函数的语法 Generator 函数的异步应用 async 函数 Class 的基本语法 Class 的继承 Decorator Module 的语法 Module 的加载实现 编程风格 读懂规格 ArrayBuffer 2 1.28 2.1 2.2 2.3 参考链接 其他 源码 修订历史 反馈意见 3 ECMAScript 6 入门 《ECMAScript }); 上面的原始代码用了箭头函数,Babel 将其转为普通函数,就能在不支持箭头函数 的 JavaScript 环境执行了。 配置文件 .babelrc Babel 的配置文件是 .babelrc ,存放在项目的根目录下。使用 Babel 的第一步, 就是配置这个文件。 该文件用来设置转码规则和插件,基本格式如下。 { "presets": [], "plugins": babel-register 模块改写 require 命令,为它加上一个钩子。此后,每当使 用 require 加载 .js 、 .jsx 、 .es 和 .es6 后缀名的文件,就会先用Babel 进行转码。 $ npm install --save-dev babel-register 使用时,必须首先加载 babel-register 。 require("babel-register");0 码力 | 679 页 | 2.66 MB | 1 年前3《玩转webpack》 第三章 基础篇 Webpack 进阶用法
基础篇:webpack 与构建发展简史 ⽬目 录 CONTENTS 01 基础篇:webpack 基础⽤用法 02 进阶篇:编写可维护的 webpack 构建配置 04 进阶篇:webpack 构建速度和体积优化策略略 05 原理理篇:通过源码掌握 webpack 打包原理理 06 原理理篇:编写 Loader 和插件 07 实战篇:React 全家桶 和 webpack 开发商城项⽬目 exports = { entry: { index: './src/index.js', search: './src/search.js ‘ } }; 缺点:每次新增或删除⻚页⾯面需要改 webpack 配置 每个⻚页⾯面对应⼀一个 entry,⼀一个 html-webpack-plugin 多⻚页⾯面打包通⽤用⽅方案 动态获取 entry 和设置 html-webpack-plugin 数量量 (匿匿名闭包) · modules 是⼀一个数组,每⼀一项是⼀一个模块初始化函数 · 通过 WEBPACK_REQUIRE_METHOD(0) 启动程序 · __webpack_require ⽤用来加载模块,返回 module.exports scope hoisting 原理理 原理理:将所有模块的代码按照引⽤用顺序放在⼀一个函数作⽤用域⾥里里,然后适当的重命名⼀一 些变量量以防⽌止变量量名冲突0 码力 | 69 页 | 4.33 MB | 1 年前3前端开发者指南(2017)
的设计 学习 React & Redux 学习渐进式 Web 应用 学习设计 JS API 学习web开发工具 学习命令行的使用 学习 Node.js 学习 JS 模块系统 学习模块加载和打包工具 学习包管理工具 学习版本控制 学习构建及任务自动化技术 学习网站性能优化 学习测试 学习无头浏览器 学习离线开发 学习网络/浏览器/应用的安全 多平台开发学习 导向学习 数据可视化工具(例如图表) 图形工具(例如 SVG、canvas、webGL) 动画工具 JSON 工具 占位符内容工具 测试工具 前端数据存储工具 (例如客户端的数据存储方案) 模块加载/打包工具 模块/包管理工具 托管工具 项目管理以及代码托管工具 协作与沟通工具 内容管理 托管/API 工具 后端即服务工具 离线工具 安全工具 构建工具 部署工具 4 1 的设计 学习 React & Redux 学习渐进式 Web 应用 学习设计 JS API 学习web开发工具 学习命令行的使用 学习 Node.js 学习 JS 模块系统 学习模块加载和打包工具 学习包管理工具 Introduction 8 学习版本控制 学习构建及任务自动化技术 学习网站性能优化 学习测试 学习无头浏览器 学习离线开发 学习网络/浏览器/应用的安全0 码力 | 164 页 | 6.43 MB | 1 年前3《玩转webpack》第六章 原理篇: 通过源码掌握 webpack 打包原理
基础篇:webpack 与构建发展简史 目 录 CONTENTS 01 基础篇:webpack 基础用法 02 进阶篇:编写可维护的 webpack 构建配置 04 进阶篇:webpack 构建速度和体积优化策略 05 原理篇:通过源码掌握 webpack 打包原理 06 原理篇:编写 Loader 和插件 07 实战篇:React 全家桶 和 webpack 开发商城项目 08 (webpack-command) 这个 npm 包,并且 执行 CLI webpack-cli 做的事情 引入 yargs,对命令行进行定制 分析命令行参数,对各个参数进行转换,组成编译配置项 引用webpack,根据配置项进行编译和构建 从NON_COMPILATION_CMD分析出不需要编译的命令 const { NON_COMPILATION_ARGS } = require("./utils/constants"); //创建一份 webpack 配置文件 "migrate", //进行 webpack0 码力 | 39 页 | 3.66 MB | 1 年前3
共 59 条
- 1
- 2
- 3
- 4
- 5
- 6