常见的构建工具:

npm script;

grunt;

gulp;

fis3;

webpack;

rollup;

 

安装:不建议全局安装;使用loader;plugin;devserver;

 

配置:

entry;output;module;resolve;plugin;devserver;其它(target,devtool;watch;externals;)

多种配置类型:导出一个function;导出一个promise的函数;

 

实战:

使用es6;使用typescript;使用flow检查器;使用scss语言;使用postcss;使用react;vue;angular2;spa;构建同构应用;构建electron;构建npm;构建离线应用;搭配npmscript;通过node.js api 启动webpack;使用webpack dev midleware;加载图片;加载svg;加载source map;

 

优化:

缩小文件的搜索范围(loader,resolve.module;resolve.mainfields;resolvealias;resolve.extensions;module.noparse);

使用dllplugin;

使用happypack;

使用parallerl uglify plugin;

使用自动刷新;

开启模块热替换;

区分环境;

压缩代码;

cdn加速;

使用tree shaking;

提取共同代码;

分割代码以按需加载;

使用prepack;

开启scope hoisting;

输出分析;

 

原理:

工作原理概括;输出文件分析;编写loader;编写plugin;调试webpack;