ES6 模块定义 export 与 import

 

 

 

  1. 一般导出 export

math.js

 

export function* getFibo()

{

let a = 1;

let b = 1;

yield a;

yield b;

while (true) {

let next = a + b;

a = b;

b = next;

yield next;

}

}

 

export function add(a,b)

{

return a+b;

}

 

index.js

 

  • 注意:如果导出模块没有default定义,那么 引用 导出模块的时候必须有 {} ,标红部分 import {add,getFibo} from "./tool/math.js"

{ } 内容必须与 math定义的值一样,当然也可以用 as

 

import {add,getFibo} from "./tool/math.js"

 

let generator = getFibo;

 

for (let i = 1; i < 10; i++) {

let result = generator().next().value;

console.log(`fibo:${i} =${result}`);

}

 

console.log(add(1,2));

 

含有 default 导出 export

 

math.js

export default function* getFibo()

{

let a = 1;

let b = 1;

yield a;

yield b;

while (true) {

let next = a + b;

a = b;

b = next;

yield next;

}

}

 

index.js

 

import myFibo from "./tool/math.js"

 

let generator = myFibo;

 

for (let i = 1; i < 10; i++) {

let result = generator().next().value;

console.log(`fibo:${i} =${result}`);

}

 

 

  • 注意:如果导出模块使用 default 导出,那么 引用 导出模块的时候不需要 {},导出函数的名称可自定义 ,标红部分 import myFibo from "./tool/math.js"

 

 

 

 

posted @ 2018-04-04 11:41  b0b0  阅读(457)  评论(0编辑  收藏  举报