2013-06-12 37 views

Trả lời

49

Có vẻ như bạn đã cài đặt socket.io ở một vị trí khác với đường dẫn hiện tại của bạn. Hoặc cài đặt trên toàn thế giới như dưới đây:

npm install -g socket.io

Hoặc tham khảo các vị trí mà bạn đã cài đặt để:

var io = require('../lib/socket.io'); 
+1

var io = require ('/ root/node_modules/socket.io/lib/socket.io'); var express = require ('/ usr/local/lib/node_modules/express/lib/express.js'); – DmitriyB

+1

Tôi đã thực hiện và kiếm được – DmitriyB

+0

@ajtrichards - đối với tôi, điều này không hoạt động khi tôi chạy nút từ crontab, ít nhất là khi khởi động lại. Nếu tôi sẽ thêm đường dẫn đầy đủ để yêu cầu() chức năng tôi tin rằng nó sẽ làm việc sau đó –

0

Tôi nghĩ rằng bạn đã thực hiện lệnh npm install socket.io ở một vị trí khác nhau và các tập tin của bạn trong thư mục khác nhau. Vì vậy, hãy chạy lệnh trong cùng thư mục có tệp của bạn hoặc đề cập đến đường dẫn nơi bạn hiện đã cài đặt socket.io trong biến PATH của bạn.

+1

Vui lòng đặt một số ngữ cảnh khác vào câu trả lời của bạn –

+0

@ AlecHenderson_v1.00 Về cơ bản tôi đang nói điều đó; bạn có thể có một thư mục nói "ABC", nơi bạn có các tệp node.exe và npm.cmd (nếu bạn đang sử dụng hệ điều hành windows) do đó bạn cũng sẽ có một thư mục node_modules để bạn phải chắc chắn rằng bất cứ khi nào bạn cài đặt bất kỳ mô-đun nào bạn lần đầu tiên thay đổi thư mục trong cmd và đạt đến đó tức là trong "ABC". Ngoài ra hãy chắc chắn rằng bạn có đường dẫn "ABC" được đề cập trong biến PATH. –

8

Cảm ơn ajtrichards!

Chỉ cần để thêm vào câu trả lời - trong trường hợp bạn sử dụng đơn giản

sudo npm install socket.io 

Đường dẫn cài đặt sẽ được

/home/.../.npm/socket.io 

Nếu bạn sử dụng sudo NPM cài đặt -g socket.io

Đường dẫn cài đặt sẽ là

/usr/local/lib/node_modules/socket.io 

Trong trường hợp đầu tiên, tôi đã thử thêm đường dẫn socket.io trong biến đường dẫn chung nhưng nó không hoạt động.

4

Tôi gặp sự cố tương tự với phiên bản 0.12.0 trên Windows. Tôi đã thử npm install -g socket.io nhưng điều đó không thay đổi bất cứ điều gì. Cũng đã thử npm bộ nhớ cache sạch cũng không thay đổi, nhưng sau cập nhật npm npm -g, mọi thứ trở nên tốt đẹp.

+0

Điều đó đã không thực sự sắp xếp nó cho tôi trên cửa sổ cũng nhưng nhờ gợi ý! –

1

này hầu như xảy ra hơn bạn cố gắng để có được socket.io trong bạn file html như:

index.html

nơi bạn có:

< script type="text/javascript" src="/socket.io/socket.io.js"></script> 

Nó sẽ không tìm thấy socket.io vì bạn không bắt đầu mô-đun trong tệp ứng dụng của bạn chứa máy chủ như

server.js

Bạn phải bao gồm sau đây dòng sau khi bắt đầu máy chủ của bạn trong server.js:

var io = require('socket.io').listen(server); 

Hope, sẽ tiết kiệm thời gian.

Các vấn đề liên quan