zoukankan      html  css  js  c++  java
  • ES6模块功能

    ES6模块功能

    • 模块功能主要由两个命令构成:exportimport
    • export命令用于规定模块外的其他模块可以访问的接口,import命令用于输入其他模块提供的功能。

    export

    export var firstName = 'Michael';
    
    • 每个个模块就是一个独立的文件。
    • 该文件内部的所有变量,外部无法获取。
    • 如果你希望外部能够读取模块内部的某个变量,就必须使用export关键字输出该变量。
    • export命令除了输出变量,还可以输出函数或类(class)
    • export输出的变量就是本来的名字,但是可以使用as关键字重命名。

    import

    import { myMethod } from 'util';
    

    (1)按需加载。

    import()可以在需要的时候,再加载某个模块。

    button.addEventListener('click', event => {
      import('./dialogBox.js')
      .then(dialogBox => {
        dialogBox.open();
      })
      .catch(error => {
        /* Error handling */
      })
    });
    

    上面代码中,import()方法放在click事件的监听函数之中,只有用户点击了按钮,才会加载这个模块。

    (2)条件加载

    import()可以放在if代码块,根据不同的情况,加载不同的模块。

    if (condition) {
      import('moduleA').then(...);
    } else {
      import('moduleB').then(...);
    }
    

    上面代码中,如果满足条件,就加载模块 A,否则加载模块 B。

    (3)动态的模块路径

    import()允许模块路径动态生成。

    import(f())
    .then(...);
    

    上面代码中,根据函数f的返回结果,加载不同的模块。

    [学习地址](Module 的语法 - ECMAScript 6入门 (ruanyifeng.com))

  • 相关阅读:
    GO语言并发
    NEERC2017:L
    bzoj2823[AHOI2012]信号塔
    bzoj1336[Balkan2002]Alien最小圆覆盖
    bzoj1069[SCOI2007]最大土地面积
    ACM2017Tsukuba:H
    ACM2015沈阳:B-Bazinga
    bzoj2724[Violet 6]蒲公英
    [bzoj4066]简单题
    [bzoj2125]最短路
  • 原文地址:https://www.cnblogs.com/yxyc/p/14820467.html
Copyright © 2011-2022 走看看