angular не может обновить из-за зависимостей машинописного текста - PullRequest
0 голосов
/ 16 марта 2020

Вот мои данные c:

Ionic CLI                     : 6.2.1 (C:\Users\Arashsoft\AppData\Roaming\npm\node_modules\@ionic\cli)
Ionic Framework               : @ionic/angular 5.0.5
@angular-devkit/build-angular : 0.803.25
@angular-devkit/schematics    : 8.3.25
@angular/cli                  : 9.0.6

Я хочу обновить @angular-devkit/build-angular, но получаю эти ошибки:

  1. Во-первых, я получил эти ошибки после запуска ng update @angular/core:

    Repository is not clean. Please commit or stash any changes before updating.  
    
  2. Затем я попытался снова с помощью этой команды:

    ng update @angular/cli @angular/core --allow-dirty
    

    и затем получил эти ошибки :

    Package "@angular-devkit/build-angular" has an incompatible peer dependency to "typescript" (requires ">=3.1 < 3.6", would install "3.7.5").      
    × Migration failed: Incompatible peer dependencies found.
    Peer dependency warnings when installing dependencies means that those dependencies might not work correctly together.
    You can use the '--force' option to ignore incompatible peer dependencies and instead address these warnings later.
      See "C:\Users\ARASHS~1\AppData\Local\Temp\ng-zWLLPl\angular-errors.log" for further details.
    

Как это исправить?

1 Ответ

0 голосов
/ 16 марта 2020

Иони c , похоже, пока не поддерживает Angular 9 , возможно, было бы лучше подождать, пока не поступит официальная поддержка.

Если вы все еще хотите попробовать Angular имеет отдельную страницу обновления , на которой вы можете выполнить процедуру. В двух словах:

  • Вы обновляете @angular/cli и @angular/core до последней версии 8.xx
  • Вы обновляете @angular/cli и @angular/core до последней версии 9.xx Версия, игнорируя проблемы одноранговых зависимостей с --force, возможно, потребуется временно
  • После этого вы можете обновить другие Angular связанные зависимости через ng update
  • После того, как все ваши зависимости будут обновлены -дата сообщение об ошибке должно go прочь

Что касается 1), ваше git репо должно быть чистым, потому что Angular не хочет связываться с вашими локальными изменениями, вы Если вы, вероятно, изменили некоторые файлы, вы можете увидеть, что изменилось с клиентом git, таким как Sourcetree или просто с помощью командной строки git status, которая будет печатать, какие файлы были изменены.

Относительно 2) Я бы не рекомендовал использовать --allow-dirty, всегда пытайтесь получить чистое состояние git, а затем выполните обновление.

Если вы новичок в git, я настоятельно рекомендую чтение документов

Надеюсь, это поможет, удачного кодирования!

...