module.export and exports

exports 是对module.exports的引用,如果export变了,对module.export没有影响,但是如果改变属性就有影响。

关于使用的例子:


var foo = function(){
	console.log('foo');
};

var bar = function() {
	console.log('bar');
};


exports.foo = foo;
exports.bar = bar;

module.exports = {
	foo: foo,
	bar: bar
}
// correct

exports  = {
	foo: foo,
	bar: bar
}
//wrong


关于什么是‘引用’的例子:

var module = {
	exports:{
		name: 'I am arrtribute of module'
	}
}

var exports = module.exports;
console.log(module.exports);
console.log(exports);

exports.name = 'name changed';
console.log(module.exports);
console.log(exports);

var Circle = {
	name: 'iamacircle',
	func: function(x) {
		return x*x*3.14
	}
}

exports = Circle;
console.log(module.exports);
console.log(exports);


你可能感兴趣的:(module.export and exports)