VSO*_*VSO 3 angular-universal angular
我已经阅读了几篇文章,其中一些是Angular Universal官方页面,此处的介绍等。
我不完全了解-Angular Universal服务器是否仍提供单个页面(大量的html),还是有一种方法可以配置Angular Universal以基于以下方式返回多个页面(一次应用程序的一部分)路线(请求/路线)?
最终目标是在不存在路由的情况下返回硬404(但是,就上下文而言,这超出了此问题的范围)。
对我来说令人困惑的部分是:
这是因为与服务器端渲染的HTML一起,我们还将向浏览器提供普通的客户端Angular应用程序。
然后,此Angular客户端应用程序将接管页面,从那里开始,所有内容都像正常的单页面应用程序一样工作,这意味着所有运行时渲染将像往常一样直接在客户端上进行。
那么,究竟是the server-side rendered HTML什么?它是预先渲染的WHOLE应用程序,还是某种程度上针对用户要求的“路线” /视图/内容?
TL; DR
index.html页面作为预渲染的html文件提供,因此用户没有(很长)等待时间。index.html。index.html),但SPA在后台启动。关于SPA的论述
Angular和其他类似框架和/或库(例如React)背后的意图是提供称为单页应用程序(SPA)的服务。SPA是在您的浏览器中运行的成熟应用程序,可自动呈现不同的页面,而无需与后端服务器进行交互。通常,仅当它请求可能显示在SPA中的其他数据时,它才与后端服务器通信。
引导SPA可能很慢
虽然SPA确实很棒,并且消除了用户每次导航到Web应用程序的另一个页面时都需要从后端服务器请求文件的需求,但是SPA的初始启动时间可能非常慢(取决于客户端计算机),并且SPA引导时,可能会导致初始空白页或加载指示器。
角度通用
为了通过查看旋转的加载图标或空白页面来消除用户的等待时间,Angular Universal可以index.html通过在后端进行预渲染来提供应用程序的初始页面。此外,它将Angular Application(您的SPA)与预渲染的一起发送到客户端浏览器index.html。
例
例如,这可能是您的应用程序的登录页面,该页面在后端预先呈现并提供给用户。最后,当您的SPA仍在用户浏览器的后台启动时,用户可以立即开始与该页面(在此示例中为登录页面)进行交互。在用户记住其凭据的时间,SPA已完成自举并为用户将来的所有请求提供服务。因此,用户不必盯着正在加载的动画或空白页,也不太可能放弃您的网页。