繁体   English   中英

package.json generation / npm unused packages

[英]package.json generation / npm unused packages

我正在我的项目中引入单元测试,为此,我需要自己制作一个package.json文件。

第一个问题是,您使用的是哪个unit testing suite 我期待mocha似乎是Node.js项目的标准。

第二个问题是:是否有任何生成package.json文件的神奇方法? (对于依赖项和版本)

第三个问题是:在开发我的项目时我一直在测试很多npm packages ,现在我遇到了很多可能未使用的包。 有什么办法可以说出哪一个没用吗? (我看到npm list installednpm list installed虽然很有用)

  1. 我正在使用摩卡。

  2. npm init

  3. npm ls会在package.json中没有列出“无关”的旁边。 但是,听起来你还没有package.json。


基本上,您的工作流程非常落后。 以下是它的工作方式:

  1. 使用npm init启动一个新项目。 它没有依赖关系。
  2. 哦,我想开始使用包,说express 将其添加到依赖项下的package.json ,然后运行npm install
  3. 哦,我想开始使用开发包,比如mocha 将它添加到package.jsondevDependencies ,然后运行npm install

你似乎有一些现有的代码与手动安装的包(通过npm install <packageName> ),这是一个烂摊子。 我建议重新开始并遵循上述工作流程。

回答第三个问题

npm prune

将删除package.json中不再提及的所有已安装模块。


你应该真的问过3个不同的问题。

  1. 我也在使用摩卡。 它具有代码覆盖率,BDD,TDD,在浏览器中运行。 这是非常完整的,并且我认为是最杰出的javascript / node.js程序员之一,名为TJ。

  2. 几乎不可能猜出要使用哪个版本。 因为npm不知道哪个版本打破了哪个依赖项。 您可以使用node-detective之类的东西安装所有依赖 然后你可以在javascript中使用npm.js安装它们。 也许我想在将来解决这个问题。

  3. 我也可能会删除所有依赖项,然后使用步骤(2)重新安装所需的依赖项。 但是目前的HD还不再是光盘空间的大案例。

PS:我想我也同意Domenic

  1. 我在使用誓言。 这很不错,但并不完美。 我发现节点中的单元测试通常具有挑战性,因为对dbs等的异步回调,并且主要是测试顶级功能。

  2. 这是你的魔力: 使用Shrinkwrap管理Node.js依赖关系

  3. 了解您正在使用的包的唯一方法是知道。 您无法以编程方式生成此内容。 我的建议是积极地删除软件包,然后重新测试所有功能 - 如果它坏了,你就会知道你需要重新安装一个软件包。

回答第三个问题 ,您可以使用Sweeper列出未使用的依赖项,然后将它们从package.json中删除。 只需npm install -g sweeper然后在你的项目目录中调用命令行上的sweeper

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM