如何轻松validation正确的npm依赖安装?
如果有任何未满足的package.json依赖关系,我怎么能知道何时提示用户运行npm install
?
我想这样做,因为如果任何require()
失败,用户得到一个糟糕的错误消息:
module.js:340 throw err; ^ Error: Cannot find module 'nopt'
我以前试过只检查一下node_modules
目录的存在,但是这只对新鲜的git克隆有效。 我也试过只需要npm
并运行npm install
作为加载的一部分,但这是非常重的重量。
我希望有一个轻量级的库,只是parsingpackage.json
,并确保node_modules
内容满足要求。
一个想法是使用process.on('uncaughtException')
来捕获模块导入错误,但是首先查看是否有“标准”解决scheme。
今天find了这个。 不知道你是否仍然需要这个。
https://www.npmjs.com/package/check-dependencies
npm install check-dependencies --save-dev
安装这个软件包并保存到你的package.json。
require('check-dependencies')(config, callback);
configuration是以下对象,然后传递给callback。
{ status: number, // 0 if successful, 1 otherwise depsWereOk: boolean, // true if dependencies were already satisfied log: array, // array of logged messages error: array, // array of logged errors }
不知道有没有npm的方式来做到这一点,但只是发现这似乎有帮助:
博客文章: http : //bahmutov.calepin.co/check-dependencies-in-grunt-by-default.html
项目: https : //github.com/bahmutov/deps-ok
如果你使用github,或者至less在github上托pipe你的project.json,你可以使用: https : //david-dm.org/
取代你的用户名和回购。
https://david-dm.org/username/repo.svg
然后你可以看到像https://david-dm.org/bower/bower这样的东西来识别过期的软件包。
- mongoose得不到工作(SchemaType#get(fn))
- 查找一个string是否匹配一个模式
- node.js ncp(asynchronousrecursion拷贝实用程序)未调用callback
- 多命令shell AS分离subprocessWITH spawn()IN Node.js
- 正则expression式的MongoDB Web APIfilter语法…它是如何完成的?
- embedded式JavaScript(EJS) – dynamic设置路由视图
- 如何操作Jasmine JS在Webdriver的“文本”validation?
- 如何防止在javascript中的内存泄漏
- 检索最新的条目,然后用MongoDB和Mongoose马上删除它?