我正在为基于cli的工具编写NPM模块。有人安装软件包后,我需要阅读他们的package.json
文件。我知道如何在语法中读取文件。我的问题是,我如何能够一致地检索package.json
文件,我应该使用相对路径还是绝对路径。
因此,安装后,我的代码将驻留在node_modules
文件夹中的某个位置:
package.json // I need to require this file
node_modules/
↳ my-package/
↳ dist/
↳ my-package.js // the actual file running the code
任何建议/最佳做法?或者只是使用正确的文件路径?
答案 0 :(得分:2)
读取package.json文件非常简单,因为您只需要它:
var package = require('./path/to/package.json');
找到正确的道路并不是那么简单。
这是一项非常常见的任务,并没有简单的方法来实现核心模块,但是npm上的模块很少可以帮助你实现这一目标。
查找包-JSON:
轻松找到您要搜索的package.json文件。它spiders package.json文件的父目录并正确读取结果。它遵循ES6迭代器设计,因此应该易于实现。
父 - 包JSON:
使用parent-package-json,你可以找到父package.json,所以使用你的模块的模块的package.json。
找到和读取封装-JSON:
从package.json文件中查找和读取数据。
请参阅: