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

Как запустить приложение AngularJS2 без сервера Node

Возможно ли запустить приложение Angular 2 в браузере без использования NodeJS в качестве сервера. Я не уверен, но если я правильно понимаю, что новые браузеры могут компилировать/ "понимать" код TypeScript, поэтому мне не нужно использовать какую-либо третью часть js lib для компиляции ее в простой javascript?

Я хотел бы создать приложение, используя 100% Angular 2 на интерфейсе, и для backend REST API с использованием Ruby On Rails, без использования рендеринга страниц Rails, сеансов и т.д.

Я немного запутался в этом, как Angular2 работает/работает за кулисами... Как мне настроить приложение Angular2 для его использования без NodeJS?

4b9b3361

Ответ 1

Думаю, вы смешиваете некоторые технологии здесь.

Сервер

Вы можете запустить приложение Angular на любом сервере, на котором могут размещаться статические файлы. В node нет ничего особенного. Так что да, вы можете использовать рубин. Или Apache, nginx, lighttpd и т.д.

Причина этого в том, что JavaScript выполняется на стороне клиента. Ответ сервера должен только доставлять файлы JS/HTML/CSS клиенту, который посещает ваш сайт.

TypeScript

Если вы пишете приложение с TypeScript, вам нужно перевести его на JavaScript до того, как его узнает какой-либо браузер. Вы можете сделать это (1), прежде чем развертывать приложение на сервере, или (2) использовать библиотеку, например System.js, которая будет переводить TypeScript на лету.

Хотя (2) определенно является опцией, и Angular CLI использовал его до недавнего времени (1), на мой взгляд, лучший вариант. Angular CLI переключился на (1) и теперь использует webpack. Webpack транслирует и связывает ваше приложение до его размещения на сервере.

Надеюсь, я смогу немного разобраться в тебе.

Ответ 2

TL; DR

Если вы используете TypeScript с Angular 2, вам нужно только Node во время разработки:

Разработка: NodeJS используется для пересылки файлов .ts в файлы .js.

Производство: будут использоваться только созданные файлы .js, NodeJS не требуется, за исключением случаев, когда вы также используете его в бэкэнд.

ПРИМЕЧАНИЕ. Если вы используете только обычный JS в разработке, вам даже не понадобится Node

Ответ 3

Вы можете использовать любую технологию на стороне сервера, включая Asp.Net Core, Node.Js, PHP для размещения содержимого js, html и css.

При создании приложения в среде IDE Node.js пересылает файлы .ts в файл .js.