webpack

164 阅读1分钟

模块懒加载:

模块懒加载

https://www.cnblogs.com/aimeeblogs/p/9497414.html

模块化

  1. 优点 (1)将一个复杂的程序根据一定的规则封装成几块文件,组合在一起 (2)不污染全局环境(立即执行函数)、按需加载、可维护性好、解耦、降低复杂度、高复用

  2. 用script加载的不好: 请求数量变多,顺序不能变,容易搞错(依赖模糊),难以维护

注:模块都是返回export对象~

commonJS:

同步,适合服务器端,语法:exports ,  var {bar}  = require('fs'), 运行时加载
浏览器端需要提前编译打包(browserify)

AMD(requireJS):

CMD(seaJS):

分割线

  1. webpack做了哪些事,怎么和Vue结合的,怎么兼容es6(即使有webpack),webpack,gulp怎么做兼容的,打包完也不兼容某些浏览器怎么办

  2. webpack 易混淆的名词解释 blog.csdn.net/wsyzxxn9/ar…

    juejin.cn/post/684490… blog.csdn.net/AsuraDong/a… 打包器:通过给定的主文件,webpack根据这个文件查找项目中所有依赖的其他文件,使用loader加载他们,最后打包成一个或多个浏览器可识别的js文件 entry:入口主文件 output:输出文件 loader:处理不同格式的文件,如将scss转换为css,或者typescript转化为js bebal-loader,bebal-polyfill: 兼容es6语法 file-loader:生成的文件名就是文件内容的MD5哈希值并会保留所引用文件的原始扩展名。 url-loader:功能类似 file-loader,但是文件大小低于指定的限制时,可以返回一个base64字符串 plugin:loaders负责的是处理源文件的如css、jsx,一次处理一个文件。而plugins并不是直接操作单个文件,直接对整个构建过程起作用 ExtractTextWebpackPlugin: www.cnblogs.com/yangmin01/p…

分割线