簡體   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