node.js 中处理相对路径的标准方法

standard way to deal with relative paths in node.js

Node.js 路径解析系统让我抓狂。我有 var a = '../data/data.db' 文件路径,但此路径的解析方式不同,具体取决于我 运行 此代码是直接来自 node.js 还是来自测试 运行ner 或来自 CI。在 node.js 中是否有一种标准的统一方式来管理相对路径?

您可以使用全局变量,例如 __dirname,它指向当前执行脚本所在的目录。

你应该使用 __dirname property and path.resolve__dirname 为您提供脚本位置的路径,而不是当前执行位置,path.resolve 清理相对路径。

var path = require('path');
var a = path.resolve(__dirname, '../data/data.db');