第一章:入门(深入浅出 Webpack 笔记)

2019-12-10  本文已影响0人  欢欣的膜笛

模块化

模块化是指把一个复杂的系统分解到多个模块以方便编码。

CommonJS

核心思想是通过 require 方法来同步地加载依赖的其他模块,通过 module.exports 导出需要暴露的接口

// 导入
const moduleA = require('./moduleA');
// 导出
module.exports = moduleA.someFunc;

优缺点:

AMD

采用异步的方式去加载依赖的模块。
AMD 规范主要是为了解决针对浏览器环境的模块化问题,最具代表性的实现是 requirejs

// 定义一个模块
define('module',  ['dep'],  function(dep) {
  return exports;
});

// 导入和使用
require(['module'],  function(module) {
});

优缺点:

ES6 模块化

是欧洲计算机制造联合会 ECMA 提出的 JavaScript 模块化规范,将逐渐取代 CommonJS 和 AMD 规范,成为浏览器和服务器通用的模块解决方案
缺点在于目前无法直接运行在大部分 JavaScript 运行环境下,必须通过工具转换成标准的 ES5 后才能正常运行

// 导入
import { readFile } from 'fs';
import React from 'react';
// 导出
export function hello() {};
export default {
  // ...
};

常见的构建工具及对比

构建就是,把源代码转换成发布到线上的可执行 JavaScrip、CSS、HTML 代码,包括如下内容。

Npm Script

Grunt

Gulp

Fis3

Webpack

Rollup

上一篇下一篇

猜你喜欢

热点阅读