ES6和CommonJS中的导入导出设置

ES6中的导入导出

导出

1. 直接导出

export var num1 = 1000;
export var num2 = 2000

2. 导出函数

export function mul(num1, num2) {
    return num1 * num2
}

3. 导出class类

export class Person {
    run() {
        console.log('在奔跑');
    }
}

4. 自定义导出文件名

const address = '北京市'
export default address // 导出的时候不命名、

自定义函数的导出

export default function(argument) {
    console.log(argument);
}

导入

1. 直接导入export定义的变量

import { num1, num2 } from './aaa.js'

2. 导入 export的function/class(对应上面导出的函数和类)

import { mul, Person } from './aaa.js'
console.log(mul(num1, num2));
const p = new Person()
p.run()

3. 导入export default 导出的变量

import add from './aaa.js'
console.log(add);

4. 导入export default 导出的函数 默认只有一个default(此时导入的对应自定义函数的导出)

import addr from './aaa.js' // 设置default导入的名为addr
addr('你好哇!')

5. 统一全部导入(其中aaa是导入时给整个文件定义的名字)

import * as aaa from './aaa.js'
console.log(aaa.flag);
console.log(aaa.num1);

CommonJS中的导入导出

导出

module.exports = {
        name: 'yimi',
        add: function(num1, num2) {
            return num1 + num2;
        }
    }
// 可以简写为
exports.name = 'yimi';
exports.add = function(num1, num2) {
    return num1 + num2;
}

导入

方法一
var aa = require('./aaa')
console.log(aa.name);

方法二
var { name, add } = require('./aaa')
console.log(name, add(5, 8));


版权声明:本文为Y_I_M_I_l_u_c_k原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。