【问题标题】:problems with node paths in prod envprod env 中的节点路径问题
【发布时间】:2016-03-14 10:44:21
【问题描述】:

我的第一个节点服务器应用程序在 localhost 上运行良好,但在 digitalocean (ubuntu) 环境中我无法获得工作路径。

这一行

require("./lib/dbHelper").initilize();

产生这个错误

Error: Cannot find module './lib/dbHelper'
at Function.Module._resolveFilename (module.js:339:15)
at Function.Module._load (module.js:290:25)
at Module.require (module.js:367:17)
at require (internal/module.js:16:19)
at Object.<anonymous> (/var/www/wsApp/app.js:18:1)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Function.Module.runMain (module.js:447:10)

还有这一行

let User = require("../models/User");

产生这个错误

Error: Cannot find module '../models/User'
at Function.Module._resolveFilename (module.js:339:15)
at Function.Module._load (module.js:290:25)
at Module.require (module.js:367:17)
at require (internal/module.js:16:19)
at Object.<anonymous> (/var/www/wsApp/routes/auth.js:5:12)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Module.require (module.js:367:17)

我已查看此处 (https://gist.github.com/branneman/8048520) 的解决方案,并尝试了建议 3、4.2 和 6,但没有改变错误消息。

值得注意的是,这条线似乎工作正常

app.use("/", require("./routes/auth.js"));

作为节点的新手,我不太了解路径映射,最后一个会起作用而第一个不起作用似乎很奇怪,因为它们都使用点语法...

【问题讨论】:

  • 添加console.log('path:', __dirname + '/lib/helper');在需要查看完整路径之前。 __dirname 是脚本所在目录的路径。因此,在您的 app.js 中,__dirname 应该是 /var/www/wsApp。我希望这可以帮助您了解 require 的工作原理。
  • 单点等于写__dirname吗?
  • 因为点的意思是相对于当前目录并且__dirname指向它然后是的
  • 究竟是什么./lib/dbHelper是文件还是目录?如果 dir 那么这假设那里有 index.js 如果文件那么你应该使用 dbHelper.js 并且正如下面的回答中指出的那样,我建议只使用小写以避免任何区分大小写的问题。例如。 db-helper.js

标签: node.js path base-path


【解决方案1】:

如果您在不区分大小写的文件系统(OS X 或 Windows)上进行开发,您可能会被 linux 文件系统区分大小写的事实绊倒。例如,检查“dbHelper”中的“H”在您的 git 存储库中是否真的是大写的。

【讨论】:

    猜你喜欢
    • 2017-09-25
    • 1970-01-01
    • 1970-01-01
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-18
    • 1970-01-01
    相关资源
    最近更新 更多