簡體   English   中英

NPM安裝->但僅將適當的行添加到package.json

[英]NPM install -> but only add appropriate line to package.json

我多年來一直在想這個問題,但是從來沒有問過。 在很多情況下,我只想向package.json添加最新版本的軟件包的相應行,而無需實際接觸node_modules

假設我想將lodash的最新版本添加到我的項目中,而node_modules將其實際安裝到node_modules 是否有NPM命令可以做到這一點?

讓我知道是否有更好的方式表達問題。

除非有人能想到更好的方法,否則似乎可以使用簡單的工具來做到這一點:

  1. npm view <pkg-name> version
  2. 讀取package.json,將依賴項添加到依賴項中,按名稱對依賴項進行排序
  3. 保存package.json

一個簡單的sh函數來獲取和格式化數據可能會有所幫助

npmvp(){
  npmvp_version=$(npm view $1 version)
  echo " \"$1\": \"$npmvp_version\""
}

jq可能是另一種快速的shell方式

npmvp(){
  npmvp_name=$1
  npmvp_version=$(npm view $npmvp_name version)
  cat package.json | jq --arg name "$npmvp_name" --arg version "$npmvp_version" \
    '.dependencies[$name] = $version' > package.json.tmp
  #mv package.json.tmp package.json
}

否則,您可以深入研究npm代碼,並做一些事情來完成實際安裝,而不是自己實施一些全新的事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM