我正在爲新項目設置開發環境。這是一個Web API項目,它從靜態文件提供@angular項目。爲了促進這一點,在構建後,我運行角色cli的構建函數,然後將這些文件複製到wwwroot中。這一切工作正常。
但是,我希望能夠運行兩個不同的npm腳本,具體取決於項目是處於Debug還是Release模式。在我的帖子構建腳本,我嘗試這樣做:
if "$(ConfigurationName)" == "Debug"
(
npm run build
)
else if "$(ConfigurationName)"=="Release"
(
npm run prod
)
,但我發現
The command "if "" == "Debug"
(
npm run build
)
else if ""=="Release"
(
npm run prod
)" exited with code 255.
它看起來像沒有被設置用於ConfigurationName值。我試過調試和發佈模式,並得到相同的錯誤。 ConfigurationName變量在VS 2017中有變化嗎?
編輯:但是,如果我單擊編輯後構建,然後單擊宏,我可以看到here ConfigurationName有一個值。它只是沒有通過我的劇本看到
啊哈,謝謝!我遇到了這個問題,並看到了建議在構建事件之前導入' ',這對我有用。我無法獲得條件部分的工作,但我最終用'npm run build-$(ConfigurationName)取代了它,並且使npm的構建和prod腳本構建 - 調試和構建 - 發佈。感謝Martin的建議! –
添加了純粹的MSBuild版本,如果您有任何興趣,請嘗試執行此操作。 (發佈建議仍然適用於所有形式的內容生成)。 –