簡體   English   中英

package.json - 是否可以在腳本中使用版本作為變量

[英]package.json - is it possible to use version as a variable in script

每次壓縮我的項目時,我都需要手動將version與生成的文件名同步,如CCCC007.tgz
在我的 package.json 中, compress-files腳本如下所示:

{
  "name": "MyBuild",
  "version": "0.0.7",
  "scripts": {
    "dev": "nodemon --legacy-watch ./src",
    "start": "node src/",
    "compress-files": "tar --exclude='./node_modules' --exclude='./myBuild.pem' --exclude='./config/local.json' -zcvf ~/CCCC007.tgz . ",
  },
}

我想知道我是否可以將version設置為變量並在腳本compress-files中使用它,例如:

  "name": "MyBuild",
  "version": "0.0.7",
  "scripts": {
    "dev": "nodemon --legacy-watch ./src",
    "start": "node src/",
    "compress-files": "tar --exclude='./node_modules' --exclude='./myBuild.pem' --exclude='./config/local.json' -zcvf ~/CCCC${this.version}.tgz . ",
  },

您不能在 JSON 中引用另一個 object,當然也不能在值內引用。

/方向看,您似乎在 linux 上。 你可以做這樣的事情:

"get-version": "node -e \"console.log(require('./package.json').version)\"",
"compress-files": "tar [...] `npm run get-version`",

話雖如此,有一些發布和版本控制工具可以讓生活更輕松。 你可以試試Release-It 但是...如果您只需要帶有tar的 package.json 腳本,不要讓任何人告訴您應該以不同的方式來做。

據我所知,您可以在 package.json 中使用此變量:

${npm_package_name} ${npm_package_version}

從這篇文章中閱讀

暫無
暫無

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

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