Есть пара других, которые также нужно исправить.
Проверьте перечисленные ниже шаги, чтобы плавно перейти с Angular 5 на Angular 6. В них подробно описываются проблемы, с которыми вы сталкиваетесь во время обновления, и способы их решения.
- Обновите версию своего узла до 8 или выше и установите Angular cli последней
глобально по npm я -g @ angular / cli @ latest.
- Angular 6 использует angular.json в качестве файла конфигурации вместо .anguar-cli.json. Также был изменен цлинт. Проверьте https://github.com/angular/angular-cli/wiki/angular-workspace для
последние детали конфигурации. Вы должны переместить любой из ваших существующих
Конфигурация в новый файл конфигурации.
- Для этого создайте другой
фиктивный проект с последним кликом, использующим ng new 'your-project' и такой же
значения по умолчанию, такие как префикс, стиль и т. д., которые вы использовали ранее для своего проекта.
Создать новый проект с кли
https://github.com/angular/angular-cli/wiki/new
- Использование
https://update.angular.io/ чтобы проверить, что было изменено с вашего
текущая версия Angular → Angular 6. Он предоставляет использование того, как
изменить / исправить их.
- Выполните действия, описанные выше, и скопируйте / обновите
файл angular.json, созданный в шаге 2. Сделай npm я в своем проекте, чтобы получить
все зависимости и делай npm update
- Теперь самое главное. RxJS
обновить и разрешить конфликты. RxJS стандартизировал импорт
операторы и наблюдаемые создатели с этим выпуском. До нпм я -г
rxjs-tslint и добавьте ниже конфигурацию lint в tslint.json
{
"rulesDirectory": [
"node_modules/rxjs-tslint"
],
"rules": {
"rxjs-collapse-imports": true,
"rxjs-pipeable-operators-only": true,
"rxjs-no-static-observable-methods": true,
"rxjs-proper-imports": true
}
}
- Теперь запустите ng lint --fix. Это исправляет несколько пунктов, но большинство оставшихся проблем будут выделены, и вам придется исправить это вручную.
Смена имени оператора:
do -> tap,
catch -> catchError,
switch -> switchAll,
finally -> finalize
Все операторы перемещены в rxjs / operator
import { map, filter, reduce } from 'rxjs/operators';
Наблюдаемые методы создания перемещены в rxjs
import { Observable, Subject, of, from } from 'rxjs';
Все готово. Добро пожаловать в Angular 6:)
Проверьте мой блог здесь о том, как обновить