2015-07-20 93 views
0

我堆棧溢出/谷歌閱讀四周,看到包括在另一個文件中使用其內容的js文件的方法..和的NodeJS需要包括index.js文件

我有admin.js和index.js,在admin.js我需要訪問index.js中的數組。

在index.js我:

exports.chatrooms = function(){ 
    return usernames; 
} 

在admin.js我:

var indexFileInclude = require('index.js'); 
var chatrooms = indexFileInclude.chatrooms(); 
console.log(JSON.stringify(chatrooms)); 

我得到一個錯誤:

Missing error handler on `socket`. 
Error: Cannot find module 'index.js' 

我在做什麼錯

+0

對不起,這是一個錯字 – Richard

+2

搜索愚弄的人......但它的要點是,使用相對路徑獲得的文件,例如'/ index.js' –

+0

如果我改變文件路徑到你指定的東西我得到的錯誤在使用中:錯誤:聽EADDRINUSE ...好像其他東西正在使用端口3000 – Richard

回答

3

With require() if you do不會指定一個路徑,它會假定您將目標指向了node_modules文件夾。要改爲在相同的文件夾中拉出一個模塊,您可以使用./表示法來指定要定位當前文件夾。

var indexFileInclude = require('./index'); 
+0

好的,謝謝!它正在正確加載文件(我認爲...),因爲我正在轉向下一個錯誤,TypeError:對象#沒有方法'聊天室'。該方法是100%內index.js只需返回我需要訪問的數組。 – Richard

+0

我沒有看到任何可能導致此問題的代碼。 –