export与export default、exports与module.exports

一:ES6 的导入模块方式和暴露对象方式:

1.ES6 中导入模块使用:import 模块名称 from '模块的路径'

2.在 ES6 中使用 export default 和 export 向外暴露成员(导出)

3.export default 向外暴露的成员可以用任意变量来接收

4.在一个模块中,export default 只允许向外暴露一次

5.在一个模块中可以同时使用 export default 和 export 暴露成员

6.使用export向外暴露成员,只能使用 {  } 的形式来接收,并且{ }中的变量名必须与导出的变量名一致,叫按需导出

7.使用 export 导出的成员,如果想换自定义名称接收,可以使用 as 来起别名

模块即js文件

test.js文件

export default {
    name: '小明',
    age: 20
}
export var title = '导出标题';
export var cont = '导出内容';

.vue文件

 

// test是导入的export default的对象,{ }中的title是导入的export var title,cont自定义名称为aaa,所以aaa是导入的export var cont
import test,{ title,cont as aaa } from '../test.js'

console.log(test.name);            // 小明
console.log(title);                    // 导出标题
console.log(aaa);                    // 导出内容

 

 

二:Node 导入模块方式和暴露对象方式:exports 与 module.exports

  commomjs

1.导入模块,var 模块名 = require('路径'),模块名可以用任意名字代替

2.使用exports与module.exports来向外暴露(导出)

如果通过exports向外暴露,只能是:

  exports.xxx = xxx

  如果通过module.exports向外暴露,可以是:

  1.module.exports = { }

 2.module.exports.xxx = xxx

 

区别

commonjs是执行时引入的,动态的,(简单理解可以动态引用)

ES6 Module是打包时引入的,静态的

posted @ 2021-01-21 15:13  爱河h  阅读(196)  评论(0编辑  收藏  举报