Skip to content

概念

模块化是指将一个大的程序文件,拆分成许多小的文件,每个小文件成为一个模块。

优势

  1. 防止命名冲突
  2. 代码复用
  3. 高维护性

模块化规范产品

  1. CommonJS => NodeJS、Browserify
  2. AMD => requireJS
  3. CMD => seaJS

ES6 模块化指令

  1. export:用于规定模块的对外接口
  2. import:用于引入其他模块的功能

暴露方式

  1. 分别暴露。在需要暴露的数据前面加上 export

    js
    export let name = '张三';
    
    export function getAge(){
        return 21;
    }
  2. 统一暴露。

    js
    let name = '张三';
    function getAge(){
        return 21;
    }
    
    export {
        name,getAge
    }
  3. 默认暴露。default 后面可以接任何数据类型,多数为对象。

    js
    export default {
        name: '张三',
        getAge(){
            return 21;
        }
    }

引入方式

  1. 通用引入。通过 as 起别名。

    js
    import * as m1 from "./m1.js";
  2. 结构赋值形式

    js
    import {name,getAge} from "./m1.js";	// 暴露方式:分别暴露、统一暴露
    import {default as m1} from "./m1.js"; // 暴露方式:默认暴露
  3. 简便引入。暴露方式只能是默认暴露

    js
    import m1 from "./m1.js";
  4. 注意:在 script 标签中引入模块时,必须将标签的 type 设置成 module

    html
    <script type="module"></script>

基于 MIT 许可发布