刚开始玩node.js的时候,有个东西一直困扰着我,很不舒服。我说的是module.exports,很尴尬是吧!因为它是node.js非常基础的一部分,也非常简单。其实,现在想起来,也不知道当初困扰我的是什么,只记得糊里糊涂的。不只是我,可能其他人也有类似的体会,在开始理解之前需要反复琢磨。现在觉得可以写一些东西出来。
var x = 5;
var addX = function(value) {
return value + x;
};
var u = new user.User(); //vs var u = new user();
<br />
这还真是个事儿:你的模块是装了输出的值,还是没有,其实你可以在同一个模块里同时放两个,但我觉得出来的API一定难看透了。
最后要考虑的是:当直接输出一个函数时会发生什么:
var powerLevel = function(level) { return level > 9000 ? "it's over 9000!!!" : level; }; module.exports = powerLevel;
<br />
当你获取上面的文件时,返回的值是实际的函数。这意味着你可以这样:
require('./powerlevel')(9050);
<br />
其实它只是下面的一个精简版本:
var powerLevel = require('./powerlevel') powerLevel(9050);
Hope that helps!
<br />
From:http://openmymind.net/2012/2/3/Node-Require-and-Exports/
回复 (2)
G
不错不错顶一个,对新手很好理解
Y
参与回复
登录后即可参与回复。登录