可能重複:
What is the purpose of NodeJS module.exports and how do you use it?JavaScript對象混亂
我有以下代碼:
var express = require('express');
var app = module.exports= express();
require('./config/environment.js')(app, express, __dirname);
require('./routes/default.js')(app, __dirname);
module.exports = function (app, express, dirname) {
....
};
module.exports = function (app, dirname) {
....
};
在此代碼發生了什麼事。第二個字符串表示,那個module.exports和app是同一個對象,對吧?
但在功能上(...)的部分應用程序作爲合格參數和代碼喜歡上「反對‘模塊’添加方法‘出口’,並做2次」我想添加一些功能,要使用在每個函數(...)中,但不能因爲不瞭解該結構中發生了什麼。 感謝
這是在同一個文件?我也很困惑,爲什麼'module.exports'在同一個文件中被定義了三個不同的時間。如果這些陳述在單獨的文件中,請更清楚地表明。 – apsillers
3個分隔文件。但爲什麼它很重要,一個文件還是三個? –
它有很大的區別,因爲node.js模塊是基於文件的。當你在'require'中引用一個文件時,它會運行指定文件中的代碼,並在該文件中返回'module.exports'的值。請參閱[NodeJS module.exports的用途是什麼以及如何使用它?](http://stackoverflow.com/questions/5311334/what-is-the-purpose-of-nodejs-module-exports-and-你怎麼使用它),也[module.exports vs導出nodeJS](http://stackoverflow.com/questions/7137397/module-exports-vs-exports-in-nodejs) – apsillers