如何允许自定义本地node_module导航项目文件系统?

时间:2019-05-16 19:05:44

标签: node.js local-node-modules

我有一个链接的本地自定义node_module,它需要使用项目文件目录:/ tmp以便在运行时将文件转储到那里。如何将我的自定义node_module定向到此目录?

我尝试使用节点内部路径实用程序访问root,但这仅位于node_modules文件夹中。

尝试使用以下方法访问tmp文件夹:

var root = require('find-root')(path.resolve(__dirname));
this.tmpDir = path.resolve(root, 'tmp');

输出:

"/Users/me/Documents/Project/Billing/server/node_modules/processremote/tmp"

但是我需要它导航(退出)到:

"/Users/me/Documents/Project/Billing/server/tmp"

1 个答案:

答案 0 :(得分:0)

find-root返回最接近的package.json的目录,在您的情况下,它是子模块本身的目录(因为它具有package.json文件并且最接近脚本)

您可以使用path.join(root, '../..', 'tmp')(而不是当前的path.resolve(root, 'tmp'))来解决此问题:

var root = require('find-root')(path.resolve(__dirname));
this.tmpDir = path.join(root, '../..', 'tmp');

// `tmpDir` will now be "/Users/me/Documents/Project/Billing/server/tmp"