Я обновил проект Angular с версии 7 до 8. Все работает гладко, схемы сделали свое дело (возможно), и мы в порядке (проект даже в производстве). Когда мы обновляем angular-cli, мы всегда генерируем новый проект, чтобы увидеть реальные различия и учиться на них, таких как новые зависимости, конфигурации и т. Д.
При создании нового Angular-проекта с angular-cli 8.0.4 новое приложение не имеет core-js в качестве зависимости:
"dependencies": {
"@angular/animations": "~8.0.1",
"@angular/common": "~8.0.1",
"@angular/compiler": "~8.0.1",
"@angular/core": "~8.0.1",
"@angular/forms": "~8.0.1",
"@angular/platform-browser": "~8.0.1",
"@angular/platform-browser-dynamic": "~8.0.1",
"@angular/router": "~8.0.1",
"rxjs": "~6.4.0",
"tslib": "^1.9.0",
"zone.js": "~0.9.1"
}
Анализ пакета на построенном проекте core-js не существует ...
В моем более старом проекте, обновленном angular-cli core-js , он присутствует и присутствует в последнем пакете ...
"dependencies": {
"@angular/animations": "~8.0.3",
"@angular/cdk": "~8.0.1",
"@angular/common": "~8.0.3",
"@angular/compiler": "~8.0.3",
"@angular/core": "~8.0.3",
"@angular/forms": "~8.0.3",
"@angular/platform-browser": "~8.0.3",
"@angular/platform-browser-dynamic": "~8.0.3",
"@angular/router": "~8.0.3",
"@auth0/angular-jwt": "2.1.1",
"@hackages/ngxerrors": "~8.0.0",
"@ng-bootstrap/ng-bootstrap": "5.0.0-rc.1",
"@ngx-loading-bar/core": "~4.2.0",
"@ngx-loading-bar/http-client": "~4.2.0",
"@nicky-lenaers/ngx-scroll-to": "~2.0.0",
"@swimlane/ngx-charts": "~12.0.1",
"bootstrap": "~4.3.1",
"core-js": "~2.6.9",
"d3-scale": "~3.0.0",
"d3-shape": "~1.3.5",
"date-fns": "2.0.0-beta.2",
"ngx-perfect-scrollbar": "~8.0.0",
"ngx-toastr": "~10.0.4",
"rxjs": "~6.5.2",
"tslib": "~1.10.0",
"xlsx": "~0.14.3",
"zone.js": "~0.9.1"
}
Почему это поведение? Безопасно ли удалять core-js как зависимость? Отсутствует ли обновление схем? При установке зависимостей npm в новейший проект я получаю сообщения postinstall от core-js, но они явно не присутствуют в описании пакета.