mongoose在电脑上运行良好
但在服务器上我收到此错误:
Error: Cannot find module './drivers'
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Function.<anonymous> (/usr/local/lib/node_modules/pm2/node_modules/pmx/lib/transaction.js:59:21)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/var/www/html/WTV.com/node_modules/mongoose/lib/schema.js:5:16)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
答案 0 :(得分:4)
好的!我带了一段时间,但我找到了解决方案
祝你好运:)
答案 1 :(得分:1)
我最近遇到了类似的问题。我正在使用MEAN堆栈与mongoose作为我的ODM并在Heroku上托管:
Error: Cannot find module './drivers'
at Function.Module._resolveFilename (module.js:326:15)
at Function.Module._load (module.js:277:25)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (/app/node_modules/mongoose/lib/schema.js:5:16)
at Module._compile (module.js:410:26)
at Object.Module._extensions..js (module.js:417:10)
at Module.load (module.js:344:32)
at Module.require (module.js:354:17)
at Function.Module._load (module.js:301:12)
at require (internal/module.js:12:17)
Process exited with status 1
State changed from starting to crashed
除了将NODE_MODULES_CACHE=false
设置为here(在缓存行为部分下)之外,我还必须从git repo中删除我的node_modules
目录(在Heroku文档中也是推荐的)。有关如何从git中删除目录的信息,请参阅this thread。
另外,添加&#34; node_modules&#34; .gitignore文件的目录是个好主意。注意:这不会从git中删除文件,您仍然必须删除任何以前要忽略的文件或目录。
答案 2 :(得分:1)
我只是在克隆目录中运行heroku run bash
并输入rm -rf node_modules
并从那里运行npm install
。只需通过heroku run bash
运行服务器并且工作正常!希望这对你有用。确保node_modules
文件中包含.gitignore
。