欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

es6中的模块化

程序员文章站 2023-12-21 13:20:16
...


模块的功能主要由 export 和 import组成.每一个模块都有自己单独的作用域,模块之间的相互调用关系是通过 export 来规定模块对外暴露的接口,通过import来引用其它模块提供的接口。同时还为模块创造了命名空间,防止函数的命名冲突。

export,import 命令

  //test.js
  export var name = 'Rainbow'

ES6将一个文件视为一个模块,上面的模块通过 export 向外输出了一个变量。一个模块也可以同时往外面输出多个变量。

 //test.js
 var name = 'Rainbow';
 var age = '24';
 export {name, age};

定义好模块的输出以后就可以在另外一个模块通过import引用。

  //index.js
 import {name, age} from './test.js'

整体输入,module指令

 //test.js
  
  export function getName() {
    return name;
  }
  export function getAge(){
   return age;
  } 

通过 import * as 就完成了模块整体的导入。

import * as test form './test.js';

通过指令 module 也可以达到整体的输入。

 module test from 'test.js';
 test.getName();

export default

可以使用export default命令,为模块指定默认输出,这样就不需要知道所要加载模块的变量名。

不用关心模块输出了什么,通过 export default 指令就能加载到默认模块,不需要通过 花括号来指定输出的模块,一个模块只能使用 export default 一次

  // default 导出
  export default function getAge() {} 
 
  // 或者写成
  function getAge() {}
  export default getAge;
相当于给变量起了一个系统默认的变量名default
// 导入的时候不需要花括号
然后系统允许你为它取任意名字。所以可以为import的模块起任何变量名,且不需要用大括号包含
import any from './test.js';

一条import 语句可以同时导入默认方法和其它变量.

import defaultMethod, { otherMethod } from 'xxx.js';

上一篇:

下一篇: