我在本地構建了項目https://github.com/Automattic/socket.io/tree/master/examples/chat,它工作得很好。但是,更好地瞭解套接字應用程序的工作方式會更好。var io = require('../ ..')(server)是做什麼的?
在主啓動腳本與拉在模塊中的一個要求是
var io = require('../..')(server)
什麼要求(「../ ..」)呢?
謝謝!
我在本地構建了項目https://github.com/Automattic/socket.io/tree/master/examples/chat,它工作得很好。但是,更好地瞭解套接字應用程序的工作方式會更好。var io = require('../ ..')(server)是做什麼的?
在主啓動腳本與拉在模塊中的一個要求是
var io = require('../..')(server)
什麼要求(「../ ..」)呢?
謝謝!
當指向目錄的路徑給予require
時,它將隱式地在該目錄中查找index.js
。
在這種情況下,它的
var socket = require("../../index.js");
var io = socket(server);
相當於在提供的例子,他們只是使用一些速記和扔掉通過調用返回到require
中間值。
查看module.require docs瞭解更多信息。
我不明白爲什麼我們需要index.js。我們在index.js裏面。 –
在這裏,你的代碼
要求( '../ ..');
將添加文件形式的路徑,它已使用SOCKET.IO,因爲你可以看到你沒有添加Socket.io模塊。
而且,如果沒有具體的路徑給出了文件或文件夾,模塊需要將嘗試加載index.js或index.node。如果沒有這樣的文件存在,那麼它會給出錯誤。
[此問題](http://stackoverflow.com/questions/9475792/how-does-require-in-node-js-work)有幾個關於需求的資源鏈接。 – Cid1025