javascript - setup - Cómo ejecutar la aplicación AngularJS2 sin servidor Node
node js angular 4 (3)
¿Es posible ejecutar una aplicación Angular 2 en el navegador sin usar NodeJS como servidor? No estoy seguro, pero si comprendo correctamente, los navegadores más nuevos son capaces de compilar / "entender" el código de TypeScript, de modo que no tenga que usar ninguna tercera parte js lib para compilarlo en JavaScript simple.
Me gustaría crear una aplicación que use 100% Angular 2 en el frontend y para la API REST de back-end que usa Ruby On Rails, sin usar la representación de la página de Rails, sesiones, etc.
Estoy un poco confundido al respecto, ¿cómo funciona / se ejecuta Angular2 entre bastidores ... ¿Cómo debo configurar mi aplicación Angular2 para usarla sin NodeJS?
Creo que estás mezclando algunas tecnologías aquí.
Servidor
Puede ejecutar una aplicación Angular en cualquier servidor que pueda alojar archivos estáticos. No hay nada especial sobre el nodo. Así que sí, puedes usar un rubí. O un Apache, nginx, lighttpd etc.
La razón de esto es que JavaScript se ejecuta en el lado del cliente. La respuesta del servidor es solo entregar los archivos JS / HTML / CSS al cliente que está visitando su sitio.
Mecanografiado
Si está escribiendo una aplicación con TypeScript, debe transpilarla a JavaScript antes de que cualquier navegador la entienda. Puede hacer esto (1) antes de implementar su aplicación en el servidor o (2) usar una biblioteca como System.js que transmitirá TypeScript sobre la marcha.
Si bien (2) es definitivamente una opción y el CLI angular lo usó hasta hace poco, (1) es, en mi opinión, la mejor opción. El CLI angular cambió a (1) y ahora está usando un webpack . Webpack está transfiriendo y empaquetando su aplicación antes de que esté alojada en un servidor.
Espero poder aclarar un poco las cosas para ti.
Puede usar cualquier tecnología del lado del servidor, incluyendo Asp.Net Core, Node.Js, PHP para el servidor del contenido js, html y css.
Al compilar la aplicación en el IDE, Node.js transpila los archivos .ts al archivo .js.
TL; DR
Si usa TypeScript con Angular 2, solo necesita Node durante el desarrollo:
DEV : NodeJS se utiliza para .ts
archivos .ts
archivos .js
.
PROD : los archivos .js
generados se usan dentro del navegador , NodeJS ya no es necesario , excepto si también sucede que lo use en el backend.
NOTA : Si solo usa JS simple en desarrollo, ni siquiera necesita Node