码迷,mamicode.com
首页 > 其他好文 > 详细

es6 Module语法

时间:2019-03-07 00:29:12      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:var   其他   last   导入   ack   tom   close   mod   hide   

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

export 可以导出   变量、函数、类。

导出可以分为 export ( 具名导出 ) 和 export default ( 默认导出 )。

技术图片
// profile.js
export var firstName = ‘Michael‘;
export var lastName = ‘Jackson‘;
export var year = 1958;
export 输出变量方式一
技术图片
// profile.js
var firstName = ‘Michael‘;
var lastName = ‘Jackson‘;
var year = 1958;

export {firstName, lastName, year};
export 输出变量方式二

注:两种方式是等价的,但建议第二种方式。因为这样就可以在脚本尾部,一眼看清楚输出了哪些变量。

技术图片
export function multiply(x, y) {
  return x * y;
};
export 输出函数

针对以上 export 导出,导入的方式如下:

技术图片
// main.js
import {firstName, lastName, year, multiply} from ‘./profile.js‘;
import 具名导出模块

注:具名导出在导入时必须和模块中导出的变量名或函数名保持一致。

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

技术图片
 1 // export-default.js
 2 export default function () {
 3   console.log(‘foo‘);
 4 }
 5 // import-default.js
 6 import customName from ‘./export-default‘;
 7 customName(); // ‘foo‘
 8 
 9 -----------------------------------------------
10 
11 // export-default.js
12 export default function foo() {
13   console.log(‘foo‘);
14 }
15 
16 // 或者写成
17 
18 function foo() {
19   console.log(‘foo‘);
20 }
21 
22 export default foo;
export default 导出

注:默认导出在导入时可以自定义变量名,默认输出只能有一个。

技术图片
// 第一组
export default function crc32() { // 输出
  // ...
}

import crc32 from ‘crc32‘; // 输入

// 第二组
export function crc32() { // 输出
  // ...
};

import {crc32} from ‘crc32‘; // 输入
比较默认输出和正常输出

第一组是使用export default时,对应的import语句不需要使用大括号;第二组是不使用export default时,对应的import语句需要使用大括号。

 

es6 Module语法

标签:var   其他   last   导入   ack   tom   close   mod   hide   

原文地址:https://www.cnblogs.com/zhucj/p/10486478.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!