Загрузите пакет Angularjs в гибридное приложение с Angular 7 - PullRequest
0 голосов
/ 24 декабря 2018

У меня большое приложение, и я применил некоторые изменения, чтобы сделать его гибридным.

Это будет нормально работать, если старый пакет приложения Angularjs загружается первым вовремя.(это пакет 4-5 МБ) Я проверял образцы в сети, и большинство из них просто говорят то же самое.например:

https://github.com/manfredsteyer/ngUpgrade-lite-sample/blob/master/src/index.html

это будет работать, потому что это небольшое приложение, и он просто импортирует все модули и компоненты вручную, и это невозможно в моем приложении с более чем 200component.

Итак, каков наилучший подход к загрузке пакета приложения Angularjs, прежде чем что-либо в гибридном приложении Angular?

Я связывал старое приложение с Webpack 4, а также пытался импортировать его вmain.ts файл, а также попытался script в angular.json , и не повезло, он дает мне ошибку:

Uncaught Ошибка: [$ инжектор: nomod] Module 'приложение 'недоступно!

что, я полагаю, должно быть из-за того, что angularjs не загружен, до того, как новый angular 7 загрузит приложение

1 Ответ

0 голосов
/ 28 декабря 2018

Хорошо, ребята, я только что понял это.Есть 2 способа сделать это, во-первых, создав загрузчик Javascript, который вы можете найти здесь:

https://davidwalsh.name/javascript-loader

Другое решение, которое я сделал, - сделать один уникальныйПроцесс сборки.Это означает, что я полностью вынул процесс сборки Angular 7 и скопировал его в конфигурацию Angularjs Webpack, так что в итоге получился один пакет, содержащий оба приложения в одном пакете.

Для этого вы можете посмотретьв этом пакете, который предоставляет вам инструменты для сборки Angular в Webpack:

https://github.com/angular/ngtools-webpack-builds

Просто помните, что вы должны обрабатывать файлы html и scss с помощью raw-laoder в вашем Webpackфайл конфигурации.

Я обновлю этот пост, чтобы предоставить больше информации, если я найду что-то новое.

...