簡體   English   中英

在現有項目中更新Angular CLI

[英]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>

升級步驟:

  1. 創建一個new blank項目,例如ng new project-name 您可以將new "playground" project命名為與old project完全相同,但請確保它與當前old project位於不同的文件夾中。
  2. old project app文件夾復制/替換為剛剛創建的new project

  3. 將所有自定義更改帶到項目中的所有其余文件:
    3A。 將舊項目中與項目相關的所有npm軟件包放入package.json (使用比較工具) ,新舊package.json之間的區別只是@anngular/cli@version及其相關軟件包版本,如karma
    3B。 使用比較工具( 請參閱下面的UPDATE )確保將所有自定義內容.angular-cli.json所有cli相關文件中,如.angular-cli.json.gitignoreindex.htmlsrc/polyfills.tssrc/main.tssrc/test.ts

  4. 運行npm installyarn

  5. 測試所有npm scripts
    5a - 運行ng serve以確保它有效,如果不能修復錯誤
    5b - 運行ng build以確保它正常工作,如果不能修復錯誤
    5c - 運行ng lint以確保它正常工作,如果沒有修復錯誤
    5d - 運行ng test以確保它正常工作,如果沒有修復錯誤( 這是我在該步驟中被捕獲的錯誤
    5e - 測試您的應用所依賴的所有其他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你可以:

  1. 差異cli版本,例如: https//github.com/cexbrayat/angular-cli-diff/compare/1.4.0...1.5.0
  2. 單擊File changed選項卡
  3. 將更改應用於當前項目。
  4. npm install / yarn
  5. 如上所述測試步驟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

更新AngularCLI v.1.xx的次要版本

注意:如果要從測試版或RC版更新到1.0,請查看1.0更新指南

AngularCLI不支持自動更新CLI版本和現有項目的依賴項。 但是,在獲得最新功能,性能改進和錯誤修復時,保持最新版本非常有用。

我設法通過以下步驟將我的項目從v.1.1.0成功更新到v1.3.0:

  1. 更新全局AngularCLI的版本(按照本指南中的步驟操作)
  2. 使用您最近安裝的最新版本創建“升級項目”

     $: ng new upgrade-project --skip-install 

    這將在新文件夾中創建項目並提交初始文件。

  3. 使用Git創建並應用升級補丁

    你可以使用普通的git format-patch / apply或你最喜歡的IDE的支持(例如WebStorm)

     $: git format-patch -1 HEAD --stdout > cli-upgrade.patch $: git apply cli-upgrade.patch 
  4. 仔細檢查更改並驗證確實需要哪些更改

    注意:您需要正確合並已修改的文件

  5. 重新安裝更新的依賴項

    • 在重新安裝之前清除舊的依賴項[推薦]

       $: rm -rf node_modules 
    • 安裝依賴項

       $: npm install 
  6. 現在您的更新已完成,下一步是驗證一切是否按預期工作並修復可能在此過程中被破壞的小事

在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.

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