Можно ли запустить два угловых приложения с одним - 1.6.4, а другим - 6.1? - PullRequest
0 голосов
/ 06 сентября 2018

Можно ли запустить два угловых приложения: одно - 1.6.4, а другое - 6.1? У меня также есть глобальная угловая версия 6.1. Может кто-нибудь уточнить, как это возможно или нет?

Ответы [ 4 ]

0 голосов
/ 07 сентября 2018

Да, конечно, это возможно. Взгляните на эту статью: https://angular.io/guide/upgrade

И вы можете обновлять или понижать версию служб и компонентов между двумя средами.

Приложение с двумя углами называется Hybrid Application

Вы должны знать, что есть два способа загрузить гибридное приложение:

  1. Использование UpgradeModule - Начальная загрузка как AngularJS (v1.6), так и Angular (v6.1) каркасов в угловой зоне

  2. Использование DowngradeModule - загружает AngularJS вне зоны Angular и разделяет две системы обнаружения изменений.

Я пробовал оба пути. И я рекомендую использовать DowngradeModule - это лучше для производительности и утечек памяти.

Если вы гуглите angular hybrid, вы найдете много статей и примеров на github

0 голосов
/ 06 сентября 2018

Ответ - Да!

Вы можете запустить как можно больше разных версий угловых версий, просто убедитесь, что порт, на котором работают эти приложения, различен.

0 голосов
/ 06 сентября 2018

Angular cli 6.x запустит все предварительные версии, вы получите только предупреждение о несоответствии версий и локальную угловую версию cli, связанную с вашим проектом;

Your global Angular CLI version (6.1.2) is greater than your local
version (1.6.4). The local Angular CLI version is used.

To disable this warning use "ng config -g cli.warnings.versionMismatch false".
0 голосов
/ 06 сентября 2018

У вас есть две основные дороги.

Первый - использовать подход ng-upgrade: https://angular.io/guide/upgrade

При таком подходе вы можете обновить ваши компоненты angularjs, чтобы они были совместимы с угловыми компонентами, и вы можете понизить ваши угловые компоненты, чтобы быть совместимыми с angularjs.

Второй путь - использование веб-компонентов для подхода, называемого микро-приложениями или микро-интерфейсами. Таким образом, у вас будет корневое приложение, в которое встроены два разных приложения, внутри двух разных веб-компонентов, в вашем случае одно для angularjs, а другое для angular, которые могут связываться друг с другом через корневое приложение.

...