2016-12-07 156 views
1

我有一个Angular 1 web应用程序部署在其中所有视图(html)都在客户端。我在服务器端公开了我的Angular服务用来获取JSON响应的REST API,然后将其填充到我的视图中并呈现给UI。 现在我打算在服务器端渲染视图。服务器端渲染HTML模板

我不能在客户端更改我的技术堆栈,但我确实在服务器端有堆栈的自由。

博客建议使用REACT进行服务器端渲染,但我怀疑我们是否可以在REACT中使用服务器端渲染,而在Angular中使用客户端。 我还有什么其他的选择?

请确认任何可能的选择。在此先感谢

+0

您可以使用相同的html模板并使用'express js'使用'ejs'来渲染它们。将处理后的html传输到客户端并初始化角度应用程序。所以,现在你已经第一次完全呈现视图。然后在第一次加载你的应用程序后,角色的方式。 –

回答

0

如果您正在使用Angular2你可以像https://github.com/angular/universal

我可以在这里看到,而且我与过去的队友讨论的方法同构的解决方案是“双重”的航线上你API。然后,您应该有一条路线,在该路线中,您将呈现一个HTML模板(例如,玉)并将其发送给客户端。然后,使用AngularJS,您可以像平常一样操作dom,并且后续的路由更改可以由AngularJS路由器处理。

所以,“算法”应该是:

  1. 询问URL
  2. API处理路线,并生成一个编译视图,并将其发送
  3. 现在AngularJS处理与它的路由器和路由DOM操作
  4. 对其他视图的后续请求需要重复相同的过程。

希望它有帮助!