Angular App是否可以在localhost上使用?

时间:2018-07-17 13:03:18

标签: angular spring-boot

我想构建一个新应用,这次我想尝试使用Angular CLI 6。

应用程序应仅在本地主机上为用户提供服务。而且应该是DAU安全的。

直到现在,我一直都使用SpringBoot,Spring MVC和Thymleaf + Bootstreap + JQuery。

优势:

  • 通过maven编译包括所有依赖项的.JAR文件。
  • 用户刚刚执行了.jar文件,一切正常可用

我不确定将Spring MVC应用程序与Angular结合使用是否可行。

如果我没错,除了Java之外,用户还需要安装npm吗? 为了使应用程序运行,用户还必须安装Angular的所有依赖项,他必须使用更多命令,而不是像ng serve这样的java -jar file.jar。

是否有任何工具包可以简化DAU的工作,或者我不打算将Angular + Spring用于方便易用的localhost应用程序?

1 个答案:

答案 0 :(得分:2)

Angular是SPA解决方案的前端框架。 Spring MVC通常不遵循SPA架构,而是在每次加载时呈现其自己的HTML网页。这就是Thymeleaf出现的地方,填补了模板引擎的角色。

虽然您可以将Angular用作不具有路由器功能的简单渲染库,并让Spring进行路由/迁移,但这不是该框架的设计目的,并且使用更简单的渲染库可能会更好像React

  • 如果您仍然选择Angular-as-a-renderer方法,则必须在每次页面加载时基本上启动一个不同的angular应用程序。但是,您仍然可以使用带有单个node_modules文件夹的单个ui库结构。春季生产的jar必须包含通过编译每个微型Angular应用程序提供的静态资产。

  • 如果您遵循SPA架构,Spring必须表现得像普通的API,并且不能产生任何HTML。所有通信都是通过AJAX请求完成的。您可以使用cdn静态文件服务器提供产生的静态文件,或者将它们包含在Spring产生的jar文件中,以便由Spring服务器部署和提供。只是不要忘记将基本重定向或路由添加到Angular的index.html文件中。