![](/img/trans.png)
[英]"npm run build" fails with SyntaxError:Unexpected token
[英]npm run script < was unexpected
我最近閱讀了一篇關於生成變更日志的文章,我想將它集成到 package.json 腳本中。
我使用正確的項目名稱稍微更改了文章中的腳本並將輸出導出到 CHANGELOG.md
"scripts": {
"generateChangelog": "git log --pretty=format:'<li> <a href=\"http://git.egt-interactive.com/frontend-games/temporary-test-project/commit/%H\">view commit •</a> %s</li> ' --reverse > CHANGELOG.md"
},
但是當我運行它時,我有以下錯誤:
< was unexpected at this time. npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! temporary-test-project@1.0.0 generateChangelog: `git log --pretty=format:'<li> <a href="http://git.egt-interactive.com/frontend-games/temporary-test-project/commit/%H">view commit •</a> %s</li> ' --reverse > CHANGELOG.md` npm ERR! Exit status 1
我認為這與逃避有關,但我找不到。
很高興能得到一些幫助。 提前致謝
編輯
我在 Windows 上工作,默認情況下,我使用的是 Powershell,但我也嘗試使用 cmd 運行npm run generateChangelog
腳本(都失敗了)
但是,如果我直接在 shell 中運行相同的git log...
命令,它會起作用:
git log --pretty=format:'<li> <a href=\"http://git.egt-interactive.com/frontend-games/temporary-test-project/commit/%H\">view commit •</a> %s</li> ' --reverse > CHANGELOG.md`
我認為這與逃避有關,但我找不到。
是的,你是對的,這是一個逃避問題。
將package.json的scripts
部分中名為generateChangelog
的scripts
更改為以下內容:
"scripts": {
"generateChangelog": "git log --pretty=format:\"<li> <a href=\\\"http://git.egt-interactive.com/frontend-games/temporary-test-project/commit/%H\\\">view commit •</a> %s</li> \" --reverse > CHANGELOG.md"
},
注意變化:
單引號 ( '
) 已替換為 JSON 轉義雙引號 ( \\"
)
JSON 轉義雙引號 ( \\"
) 已替換為 ( \\\\\\"
)
git log --pretty=format:\"<li> <a href=\\\"http://git.egt-interactive.com/frontend-games/temporary-test-project/commit/%H\\\">view commit •</a> %s</li>\" --reverse > CHANGELOG.md
^^ ^^^^ ^^^^ ^^
運行$ npm run generateChangelog
現在應該通過以下方式成功運行:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.