npm后安装脚本和npm链接

我写了一个模块,它有一个安装后的脚本来执行一些任务。

然而,在模块的开发阶段,我使用“npm链接”(从模块目录内)和“npm link myModule”(从应用程序目录

但是这导致了一个问题:postinstall脚本需要从应用程序目录中读取一些文件。

由于模块是npm链接的,并且在node_modules目录中有一个链接到模块源文件夹,所以启动post安装脚本的节点进程具有模块的工作目录,而不是应用程序。

结果,应用程序目录是未知的

有没有解决方法?

——– ——–更新

如果我修改npm / lib / utils / lifecycle.js ( https://github.com/npm/npm/blob/2.x/lib/utils/lifecycle.js )并在第55行插入

env.npm_start_dir = process.cwd(); 

那么我可以访问用户通过访问键入“npm链接”的原始目录

 process.env.npm_start_dir 

我宁愿有一个“官方”的方式来做到这一点