Подтвердить что ты не робот

Как развернуть приложение Angular 2, разработанное в Typescript для производства?

Я новичок в Angular 2. Я смущен тем, как Angular 2 работает в рабочей среде.

  • Каковы предпосылки для запуска приложения Angular 2 на рабочем сервере?

  • Возможно ли развертывание приложения на сервере IIS или требуется сервер node?

  • После компиляции файла на машине разработки с помощью node нам нужно развернуть оба .js и .ts для производства?

4b9b3361

Ответ 1

Я использую JSPM для подготовки моих проектов angular2. Другие популярные инструменты, такие как JSPM, включают webpack и browserfy. Одной из важных задач, которые будет выполняться JSPM, является объединение различных модулей, составляющих ваш проект angular2. Я также установил флаг selfExecutingBundle в true и JSPM создаст один связанный js файл (например, myApp.bundled.js), и оттуда я его уменьшу (myApp.bundled.min.js), и эта ссылка script используется в файле index.html.

<html>

<head>
    <title>Hello Angular World</title>
</head>
<body>
<div>
    <my-app>Loading...</my-app>
</div>
    <script src="/js/myApp.bundle.min.js"></script>
</body>

</html>

Ответ 2

Angular 2 приложения написаны в TS, но браузер только понимает JavaScript в конце. Таким образом, любой проект TS трансформируется в первое событие JavaScript во время разработки.

Вы можете запустить приложение angular 2 на любом сервере.

Вам нужно только развернуть .js файлы, так как браузер не будет анализировать файлы .ts.

Ответ 4

это очень просто загрузить приложение на производство. шаги:

  • создайте приложение, используя https://angular.io/docs/ts/latest/guide/webpack.html
  • Если ваше приложение имеет маршрутизатор, не забудьте использовать {useHash: true}, чтобы предотвратить загрузку страницы с ошибкой. например: RouterModule.forRoot(маршруты, {useHash: true}).
  • введите npm в корневой путь вашего проекта.
  • он автоматически создает папку dist в корневом каталоге проекта.
  • не нужно настраивать сервер node на производство. вы можете просто выбрать сервер apache и загрузить содержимое папки dist.

Ответ 5

  • Сервер приложений (для моего ответа я использовал Tomcat), node.js и angular -cli (путем запуска "npm install -g angular-cli" )
  • Вы можете установить на другие серверы
  • Только файлы .html,.js и .map(по крайней мере, для моего решения)

Это работает лучше, если вы создали приложение, используя angular -cli инструкции, показанные здесь. В корневом каталоге приложения запустите следующую команду ng build --env=prod, и это приведет к пакету через webpack развертываемые элементы в каталоге \dist.

Скопируйте каталог \dist и вставьте его в {CATALINA_HOME}\webapps. Переименуйте \dist в имя папки, например \foo. Откройте \foo\index.html и отредактируйте строку base-href, чтобы представить ваше новое имя каталога:

<base href="/foo/">

Запустите Tomcat через startup.bat или выбранное вами предпочтение и перейдите к http://localhost:8080/foo/, и вы сможете просмотреть свой Angular 2.

Примечание. Если вы не создали проект с помощью команды ng new, я прочитал, где выполняется ng init, прежде чем сборка позволит вам выполнить шаги. Я не тестировал это сам, хотя.

Ответ 6

Все typescript файлы будут переданы в js файлы при разработке приложения транспилером, поэтому вам не нужны файлы ts в процессе производства.

Также, когда вы закончите разработку, все, что вам нужно сделать, это сделать пакет dist с помощью некоторого инструмента для комплектации, например webpack-starter или angular2-seed.

Затем вы развертываете этот пакет на свой сервер.

В вышеупомянутых пакетах есть много информации о том, как можно развернуть их приложение angular2 для производства.

Надеюсь, что это поможет.