我是前端Web框架的新手。用前端框架(例如Angular / React / Vue)编写的Web应用程序是在服务器端还是在客户端的浏览器中运行?
根据https://blog.angular-university.io/developing-a-modern-java-8-web-app-with-spring-mvc-and-angularjs/
的图表,它似乎运行在客户端的浏览器中。根据https://www.prashantp.org/angular/java/angular2-javaee-project.1/的图表以及https://www.baeldung.com/spring-boot-angular-web的描述,它似乎在服务器端运行(尽管可能与提供REST服务的另一服务器端不同)
谢谢。
答案 0 :(得分:1)
最近的大多数Javascript框架都需要某种或其他类型的服务器来编译和运行JavaScript。例如,Angular使用节点服务器来编译用angular应用程序编写的Typescript文件。
答案 1 :(得分:0)
答案是,是的,这些前端框架运行在浏览器中。这就是“前端”的意思。 Angular,React,Vue等都将在用户的浏览器中运行。
您感到困惑的原因似乎是因为该代码是从后端服务器提供的。 Angular程序将一直存在于此,直到可以将其交付给浏览器并在其中执行为止。
第二张图的答案很容易暗示,它所代表的后端是一台Java服务器,而Angular不是Java,因此它不可能在Java Application Server上运行。
我认为对您来说非常有用的资源是查找有关单页应用程序的信息。
现在,如果不提及服务器端渲染,我真的无法完成此答案。 SSR是一种可以将单页应用程序转换为传统的多页应用程序的方法,因此不会在浏览器端使用Javascript处理路由。路由由返回新HTML页面的一系列HTTP请求处理。但是,这种做法是高级主题,几乎可以肯定与您无关。
答案 2 :(得分:0)
前端代码仅在浏览器端运行。
使用spring作为后端的部署选项:
您可以将这些前端代码部署在spring服务器端,并且可以通过配置根URL重定向到index.html来使用tomcat提供服务,并且前端代码可以使用以下命令与在同一主机上运行的服务器端代码进行通信REST API
OR
可以将前端部署到节点js服务器之类的Web服务器,并可以提供索引html文件。 spring应用程序可以服务REST API端点
OR
可以从AWS S3提供前端编译文件,而spring应用可以提供REST API端点