《玩转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 年前3
[试读] Angular 5 高级编程功能.....13 2.3.1 准备 HTML 文件................14 2.3.2 创建数据模型.....................14 2.3.3 创建模板 ...........................17 2.3.4 创建组件 ...........................17 2.3.5 将应用程序组合起来...... 创建项目的 ASP.NET Core MVC 部分..................34 3.3 配置项目...................................35 3.3.1 准备项目(Visual Studio) .......35 3.3.2 创建和编辑配置文件...........36 3.3.3 启用日志消息.....................39 ................70 5.1.1 创建 HTML 和 JavaScript 文件..................................71 5.1.2 配置 TypeScript 编译器........72 5.1.3 运行示例项目.....................72 5.2 理解 script 元素...............0 码力 | 42 页 | 6.14 MB | 1 年前3
Vue.js v3.0 教程(Vue3 教程)介绍 应用 & 组件实例 模板语法 Data Properties and Methods 计算属性和侦听器 Class 与 Style 绑定 条件渲染 列表渲染 事件处理 表单输入绑定 组件基础 深入组件 组件注册 Props 非 Prop 的 Attribute 自定义事件 插槽 提供 / 注入 动态组件 & 异步组件 模板引用 处理边界情况 过渡&动画 - 2 - 本文档使用 书栈网 · BookStack.CN 构建 响应性 深入响应性原理 响应式原理 响应式计算和侦听 组合 API 介绍 Setup 生命周期钩子 提供/注入 模板引用 渲染机制和优化 Vue 2 中的更改检测警告 工具 单文件组件 测试 TypeScript 支持 Mobile 规模化 路由 状态管理 服务端渲染 无障碍 基础 语义学 Data 选项 事件 API 过滤器 片段 函数式组件 - 3 - 本文档使用 书栈网 · BookStack.CN 构建 全局 API 全局 API Treeshaking 内联模板 Attribute key attribute 按键修饰符 在 prop 的默认函数中访问 this 渲染函数 API Slot 统一 过渡的 class 名更改 v-model v-if0 码力 | 368 页 | 3.97 MB | 1 年前3
2019-2021 美团技术年货 前端篇图片处理:经过对源码的大量阅读及梳理,我们发现图片请求的 URL 首先会 读取 meta 标签中 assetBase 值进行 URL 路径拼接,根据拼接好的 URL 来获取资源。目前,在项目 web/index.html 模板文件中并没有 meta 标 签,于是就会根据相对路径进行请求。解决方案是在编译过程中,根据请求环 境增加 meta 标签并把 content 设置为 CDN 路径。 ● JavaScript rWeb 依赖的这些 SDK 中包含了一些使用频率较低的功能,例如:蓝牙、USB、WebRTC、陀螺仪等 功能的支持。为此,我们提供了对这些长尾功能的定制能力(这些功能默认不开启, 但业务可配置),将未被启用长尾的功能进行裁剪。 通过上述分析可得,我们的思路就是对 Dead Code 进行二次剔除,以及对这些长 尾功能做裁剪。基于这样的思路,我们深入 Dart-SDK、Framework DOMContentLoaded 之后,对网络资源、事件、DOM 变动 进行监听,并对监听结果根据特定规则进行分析加权,得到一个首屏加载完成 的状态标识; ● 运行阶段,在首屏加载完成之后对配置平台下发的云端 JSON 文件进行解 析,对符合配置规则的资源进行 HTTP XHR 预加载,从而实现文件的预缓存 功能。 下图为预缓存的整体方案设计: 48 > 2021年美团技术年货 图 15 预缓存方案设计 编译阶段0 码力 | 738 页 | 50.29 MB | 1 年前3
阮一峰 《ECMAScript 6入门》 第三版}); 上面的原始代码用了箭头函数,Babel 将其转为普通函数,就能在不支持箭头函数 的 JavaScript 环境执行了。 配置文件 .babelrc Babel 的配置文件是 .babelrc ,存放在项目的根目录下。使用 Babel 的第一步, 就是配置这个文件。 该文件用来设置转码规则和插件,基本格式如下。 { "presets": [], "plugins": map, ast } // Babel AST转码 babel.transformFromAst(ast, code, options); // => { code, map, ast } 配置对象 options ,可以参看官方文档http://babeljs.io/docs/usage/options/。 下面是一个例子。 var es6Code = 'let x = n => n function x(n) {\n return n + 1;\n} ;' 上面代码中, transform 方法的第一个参数是一个字符串,表示需要被转换的 ES6 代码,第二个参数是转换的配置对象。 ECMAScript 6简介 16 babel-polyfill Babel 默认只转换新的 JavaScript 句法(syntax),而不转换新的 API,比 如 Iterator0 码力 | 679 页 | 2.66 MB | 1 年前3
基于Electron vue的桌应用实战2效率低,同质化,重复成本 核⼼心功能 应⽤用介绍 多⼯工程模板 ⼀一键集成SDK 快速⽣生成⻚页⾯面 接⼊入发布系统 DevOps H5、PC 查询、表单、图表 登录,监控、埋点 瓦匠 ⼯工程搭建 模板注⼊入 构建部署 项⽬目配置 技术挑战 应⽤用介绍 ⽂文件的IO 可视化编辑 模板的编译 命令的调⽤用 ⼯工程搭建 模板注⼊入 构建部署 项⽬目配置 Web开发能⼒力力不不⾜足 命令⾏行行⽆无法可视化 Process Main Process IPC、RPC Render Process IPC 、RPC IPC ✔ 项⽬目实践 应⽤用架构 ⽤用户功能 ⼯工程搭建 项⽬目配置 模板注⼊入 构建部署 视图层 Bridge Node API Native API 服务端 Eggjs Cat Egg-cors Egg-Script 应⽤用层 中间层 客户端 Vue │ │ ├── router │ │ ├── App.vue │ │ └── index.js └── package.json 项⽬目实践 ⼯工程⽬目录结构 构建配置 渲染进程 主进程 构建打包 Electron SWA 应⽤用 Web SPA 应⽤用 Electron应⽤用的开发调试 、构建发布 Restart 项⽬目实践 开发和调试 webpack0 码力 | 34 页 | 3.47 MB | 1 年前3
electron中文教程
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 - 本文档使用 模块提供了一套各平台通用的接口,但是在每个平台间依然会有一些微小的差异。 在 macOS 上, autoUpdater 模块依靠的是内置的 Squirrel.Mac,这意味着你不需要依靠其他的设置就能使 用。关于更新服务器的配置,你可以通过阅读 Server Support 这篇文章来了解。 在 Windows 上,你必须使用安装程序将你的应用装到用户的计算机上,所以比较推荐的方法是用 grunt- electron-installer0 码力 | 203 页 | 2.72 MB | 1 年前3
前端开发者指南(2017)6.4 1.7 1.7.1 1.7.2 1.7.3 1.7.4 学习可访问性相关知识 学习 web/浏览器 API 学习 JSON (JavaScript 对象表示法) 学习 JS 模板 学习静态网页生成器 通过JS学习计算机科学 学习前端应用架构 学习数据(例如,JSON)API 的设计 学习 React & Redux 学习渐进式 Web 应用 学习设计 JS API 动画 学习 DOM、BOM 和 jQuery 学习网页字体 & 图标 学习可访问性相关知识 学习 web/浏览器 API 学习 JSON (JavaScript 对象表示法) 学习 JS 模板 学习静态网页生成器 通过JS学习计算机科学 学习前端应用架构 学习数据(例如,JSON)API 的设计 学习 React & Redux 学习渐进式 Web 应用 学习设计 JS API 模块 依赖管理 包管理 JavaScript 动画 CSS 动画 图表/图形 UI 控件 代码质量测试 代码覆盖率测试 代码复杂性分析 集成测试 命令行/命令行界面 模板策略 模板引擎 单页应用 XHR 请求(亦称 AJAX) Web /浏览器 安全 HTML 语义 浏览器开发工具 前端开发技能 25 前端开发者为 ... 而开发 前端开发者所编写的 HTML、CSS0 码力 | 164 页 | 6.43 MB | 1 年前3
TypeScript 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 年前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 数量量 mport"], ... } 代码分割的效果 ESLint 的必要性 2017年年4⽉月13⽇日,腾讯⾼高级⼯工程师⼩小明在做充值业务时,修改了了苹果 iap ⽀支付配 置,将 JSON 配置增加了了重复的 key 。代码发布后,有⼩小部分使⽤用了了 vivo ⼿手 机的⽤用户反馈充值⻚页⾯面⽩白屏,⽆无法在 Now app 内进⾏行行充值。最后问题定位是: vivo ⼿手机使⽤用了了系统⾃自带的0 码力 | 69 页 | 4.33 MB | 1 年前3
共 55 条
- 1
- 2
- 3
- 4
- 5
- 6













