ES6中export
1、export
例如:新建一个utils.js文件,使用export进行暴露
//export和export default均可用于导出常量,函数,文件,模块等。
export function Fun() {
return "暴露一个函数";
}
export let a="暴露一个常量a"
在页面中进行引入
import {Fun,a} from './utils.js';
console.log(Fun())//输出"暴露一个函数"
console.log(a)//输出"暴露一个常量a"
2、export default
例如:新建一个utils.js文件,使用export default进行暴露
//export和export default均可用于导出常量,函数,文件,模块等。
function Fun() {
return "暴露一个函数";
}
let a="暴露一个常量a"
export default{
Fun:Fun,//"Fun:Fun"可以简写Fun,例如下边只写一个a
a
}
在页面中进行引入
import util from './utils.js' //util这个名字可以随便写
console.log(util.Fun())//输出"暴露一个函数"
console.log(util.a)//输出"暴露一个常量a"
概念:module.exports和exports是属于commonJs规范,export和export default是ES6模块规范。
为什么采用 CommonJS 规范呢?
Node.js 主要用于服务端项目,CommonJS 规范也主要用于服务端编程,所以 Node 的模块设计采用 CommonJS 规范很合适。
1、module.exports
例如:新建一个app.js文件,使用module.exports进行暴露
var app = {
name: 'app',
version: '1.0.0',
sayName: function(name){
console.log(this.name);
}
}
module.exports = app;//暴露出去一个对象
在页面中进行引入
var app = require('./app.js');//引入
console.log(app.name);//结果为:app
console.log(app.version);//结果为:1.0.0
app.sayName('hello');//hello
2、exports
例如:新建一个app.js文件,使用module.exports进行暴露
var func1 = function() {
console.log("func1");
};
var name='app'
exports.function1 = func1;//暴露函数
exports.name= name;//暴露常量
在页面中进行引入
var app= require("./functions");
app.function1();//结果为:"func1"
console.log(app.name);//结果为:"app"