有没有办法从npm运行模块中获取package.json属性?

我正在写一个模块将会从这样的“脚本”属性运行:

"scripts": { "runMyModule": "mymodule -stuff stuff" } 

注意:这不是我的模块的package.json 这是用户用来运行npm的package.json

我想允许他们添加一个属性到主要的package.json文件(在npm run runMyModule的命令行中),然后我的模块将读取它。 这可能吗?

我想要的东西是:

 "forMyModule": { stuff: [ "one", "two" ] }, "scripts": { "runMyModule": "mymodule -stuff stuff" } 

是否有可能在我的模块获取forMyModule.stuff

我已经创build了index.jsbin/mymodule.js文件。

find使用你的模块的项目的根path。 有几种方法可以做到这一点,每种方法都有其优点和缺点: 从正在运行的node.js应用程序中确定项目根目录

一旦你有了这个path,你可以简单地require(path.join([rootPath, 'package.json']))并检查内容以find设置。

会有这样的事情为你工作?

 var pjson = require('../package.json'); console.log(pjson.forMyModule);