- 博客(7)
- 收藏
- 关注
原创 devserver之自动刷新
我们知道,webpack模块负责监听文件,webpack-dev-server模块则负责刷新浏览器,本文则详细讲述这两种原理 文件监听 相关配置 module.export = { // 只有开启监听模式时,watchoptions才有意义 // 默认是 false,也就是不开启 watch: true, // 监听模式开启时,watchOptions才有意义
2018-01-29 18:41:21 1893
原创 加载调试本地loader
在开发loader的过程中,为了测试编写的loader能否正常工作,需要将它配置到webpack中,才可能调用该loader,为此,需要先将编写的loader发布到npm仓库,再安装到本地项目中使用,但这种方法会很麻烦,解决以上问题的便捷方法有如下两种: npm link npm link 专门用于开发和调试本地的npm 模块,能做到在不发布模块的情况下,将本地的一个正在开发的模块的源码链接到
2018-01-29 14:57:24 2037
原创 babel
Babel介绍 Babel 是一个通用的多用途 JavaScript 编译器。通过 Babel 你可以使用(并创建)下一代的 JavaScript,以及下一代的 JavaScript 工具。在新的javascript得到广泛普及之前,Babel 能够让你提前(甚至数年)使用它们。而不用担心环境是否支持。 不过 Babel 的用途并不止于此,它支持语法扩展,能支持像 React 所用的 JSX
2018-01-26 17:28:15 1407
原创 CommonJS 规范
1、概述module.exports输出变量和函数var a = 5; var add = function (value) { return value + a; }; module.exports.a = a; module.exports.add = add;每个模块内部,module变量代表当前模块。这个变量是一个对象,它的exports属性(即module.exports)是对外的接口
2018-01-10 15:10:02 2237
原创 HMR(热替换)
HMR 即模块热替换(hot module replacement)的简称,它可以在应用运行的时候,不需要刷新页面,就可以直接替换、增删模块。 webpack 可以通过配置 webpack.HotModuleReplacementPlugin 插件来开启全局的 HMR 能力, plugins: [ new webpack.DefinePlugin({ 'process.env'
2018-01-05 16:20:21 10917
原创 解决阻塞效应之defer和async
1、正常的网页加载流程1. 浏览器一边下载HTML网页,一边开始解析 2. 解析过程中,发现<script>标签 3. 暂停解析,网页渲染的控制权转交给JavaScript引擎 4. 如果<script>标签引用了外部脚本,就下载该脚本,否则就直接执行 5. 执行完毕,控制权交还渲染引擎,恢复往下解析HTML网页如果外部脚本加载时间很长(比如一直无法完成下载),就会造成
2018-01-03 17:56:59 3628
原创 移动设备API之入门
移动设备API1、Permission API用来查询某个接口的许可情况// 查询地理位置接口的许可情况 navigator.permissions.query({ name: 'geolocation' }) .then(function(result) { // 状态为 prompt,表示查询地理位置时, // 用户会得到提示,是否许可本次查询 /* result.status =
2018-01-03 17:00:24 1309
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人