【问题标题】:foward slashes and backward slash are confusing正斜杠和反斜杠令人困惑
【发布时间】:2019-12-12 07:46:46
【问题描述】:

我一直看到这个错误:

Error: Cannot find module 'E:\LARRY\FDC\stesh\backend\routes/core/util' 我不明白的是正斜杠和反斜杠。

我的代码如下所示。

const appRoot = __dirname + '/../../'; var util = require(__dirname + '/../../core/util');

什么是正斜杠反向威胁的解决方案?

【问题讨论】:

    标签: node.js


    【解决方案1】:

    反斜杠是 Windows 上文件路径的平台特定分隔符,这就是为什么 __dirname 在您的情况下会产生 E:\LARRY\FDC\stesh\backend\routes 的原因。

    请注意,在处理路径时,您应该始终使用path 模块,这将确保您想要访问的所有路径都具有跨平台功能。

    此外,您不应将直接路径传递给 require,而是传递相对路径(有关详细信息,请参阅 Node require absolute path)。

    【讨论】:

      【解决方案2】:

      您可以使用 .replace 函数来交换字符串中的所有路径分隔符。

      const appRoot = (__dirname + '/../../').replace("\\","/");
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-05-29
        • 2013-11-14
        • 1970-01-01
        • 2021-12-31
        • 1970-01-01
        • 2010-12-14
        相关资源
        最近更新 更多