[英]Update Angular CLI in existing project
我正在現有項目中使用angular-cli 1.0.4,我想將版本更新為1.2.4。 卸載舊版本並使用npm更新到較新版本並影響我現有項目的最佳方法是什么? 它會更新package.json文件的版本。
your angular cli
更新為any
版本的指南 更新2018年10月23日參考: 如何在ng cli和角度變化版本最佳實踐時更新應用程序 :
如果您使用Angular CLI版本6+,只需運行
ng update
然后按照命令行說明進行操作。 另請查看本指南更新Angular項目
最近我將我的項目從1.0.4
升級到1.3.0-beta
,但是在任何角度cli版本的情況下都適用。
所以首先只需要安裝你想要升級項目的角度cli,如https://github.com/angular/angular-cli#updating-angular-cli所說:
npm uninstall -g @angular/cli
npm cache clean
npm install -g @angular/cli@<put exact version here>
new blank
項目,例如ng new project-name
您可以將new "playground" project
命名為與old project
完全相同,但請確保它與當前old project
位於不同的文件夾中。 將old project
app
文件夾復制/替換為剛剛創建的new project
將所有自定義更改帶到項目中的所有其余文件:
3A。 將舊項目中與項目相關的所有npm軟件包放入package.json
(使用比較工具) ,新舊package.json
之間的區別只是@anngular/cli@version
及其相關軟件包版本,如karma
等
3B。 使用比較工具( 請參閱下面的UPDATE )確保將所有自定義內容.angular-cli.json
所有cli相關文件中,如.angular-cli.json
, .gitignore
, index.html
, src/polyfills.ts
, src/main.ts
, src/test.ts
等
運行npm install
或yarn
npm scripts
: ng serve
以確保它有效,如果不能修復錯誤 ng build
以確保它正常工作,如果不能修復錯誤 ng lint
以確保它正常工作,如果沒有修復錯誤 ng test
以確保它正常工作,如果沒有修復錯誤( 這是我在該步驟中被捕獲的錯誤 ) npm scripts
。 完成上述所有操作后,您可以刪除或歸檔old project
以防萬一,從那時起繼續使用new project
。
更新 :你也可以使用這個angular-cli-diff來找出版本之間的區別,例如https://github.com/cexbrayat/angular-cli-diff/compare/1.4.0...1.5.0 (參見
Files changed
選項卡)
所以使用angular-cli-diff你可以:
File changed
選項卡 npm install / yarn
5(ae)
的變化 看看Angular-Cli 文檔 。 您不需要創建新項目。
全球套餐:
npm uninstall -g @angular/cli
npm cache clean
# if npm version is > 5 then use `npm cache verify` to avoid errors (or to avoid using --force)
npm install -g @angular/cli@latest
本地項目包:
rm -rf node_modules dist # use rmdir /S/Q node_modules dist in Windows Command Prompt; use rm -r -fo node_modules,dist in Windows PowerShell
npm install --save-dev @angular/cli@latest
npm install
注意:如果要從測試版或RC版更新到1.0,請查看1.0更新指南 。
AngularCLI不支持自動更新CLI版本和現有項目的依賴項。 但是,在獲得最新功能,性能改進和錯誤修復時,保持最新版本非常有用。
我設法通過以下步驟將我的項目從v.1.1.0成功更新到v1.3.0:
使用您最近安裝的最新版本創建“升級項目”
$: ng new upgrade-project --skip-install
這將在新文件夾中創建項目並提交初始文件。
使用Git創建並應用升級補丁
你可以使用普通的git format-patch / apply或你最喜歡的IDE的支持(例如WebStorm)
$: git format-patch -1 HEAD --stdout > cli-upgrade.patch $: git apply cli-upgrade.patch
仔細檢查更改並驗證確實需要哪些更改
注意:您需要正確合並已修改的文件
重新安裝更新的依賴項
在重新安裝之前清除舊的依賴項[推薦]
$: rm -rf node_modules
安裝依賴項
$: npm install
現在您的更新已完成,下一步是驗證一切是否按預期工作並修復可能在此過程中被破壞的小事
在CLI成功更新后,它的初始依賴關系隨時也可以更新默認情況下未安裝的其他依賴項(例如Angular Material)。
$: npm update @angular/material ...
上述兩個答案都是正確的,並且基於與今天事實上相同的方法。
Angular CLI計划在其中一個版本中添加更新功能。
要更新您的其他依賴項,可以通過將它們移動到第二個package.json來實現。 您可以使用Yarn Workspaces或package-json-merge。 我的網站上有更多信息: https : //www.rainerhahnekamp.com/en/updating-angular-cli-dependencies/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.