「錯誤:無法找到模塊」我試圖使用browserify捆綁我的服務器端代碼到一個單一的JS文件。因此,我跑當使用browserify捆綁socket.io依賴關係與--node標誌
browserify --node -t coffeeify source/server.js.coffee -o deployment/server.js
但我發現了以下錯誤
Error: Cannot find module '../build/Release/bufferutil' from '/My/Project/Path/node_modules/socket.io/node_modules/engine.io/node_modules/ws/lib'
唯一出錯的行似乎是require "socket.io"
。當我刪除它捆綁工作正常。如果我刪除--node
標誌,它也可以正常工作。
「丟失」的模塊會出現在那裏當我檢查目錄與
ls node_modules/socket.io/node_modules/engine.io/node_modules/ws/build/Release/
我看到
.deps/ bufferutil.node* linker.lock obj.target/ validation.node*
一些谷歌搜索使我這個https://github.com/websockets/ws/issues/25。但這似乎是指舊版本ws
。模塊中ws
的版本已經超出了這個範圍,我也已經嘗試過從源代碼重建節點,但無濟於事。
任何想法仍然可能導致此錯誤?
我認爲'--node'是問題所在。 [Here](https://github.com/substack/node-browserify#usage)你可以看到,它是'--no-builtins','--no-commondir'的別名,並且設置了' - -INSERT-全球vars'。我認爲刪除'--no-builtins'(或/和'--no-commondir')應該可以解決你的問題。 – marcel
問題是我想要的。我試圖創建一個包在服務器上運行。不帶'--node'標誌運行它會導致創建的包發生錯誤,因爲它正確無法找到'window' – fynyky