如何避免下载js文件和认证余烬SPA

问题描述 投票:0回答:1

我们有一个余烬单页应用程序。在特定页面上,单击超链接时,我要在新窗口中打开特定路线。

这里的问题是,它开始下载所有js文件(main.js)并对会话进行身份验证,然后才加载路由。这会花费太多时间,并给用户带来糟糕的体验。由于只有在用户已经登录时才能单击超链接,有没有办法避免在ember中下载所有js文件和身份验证?类似当前窗口的子窗口,因此路由将立即加载。

performance ember.js coffeescript
1个回答
0
投票

有一种避免下载所有js文件的方法

除非浏览器将标头设置为不缓存JS文件,否则它们应由浏览器缓存。但是也许文件是从缓存中加载的,但是您遇到的延迟是脚本的解析和执行。使用SPA无法避免这种情况。

您可以通过FastBoot使用服务器端渲染来缩短感知到的延迟。这将意味着该路由将立即呈现,但是在所有客户端脚本都已执行之前,用户将无法与之完全交互。

灰烬中的身份验证

我不认为这会增加太多延迟,因为您应该已经在另一个窗口中进行了身份验证,因此应该只检查Cookie或HTTP标头。

类似于当前窗口的子窗口,因此将立即加载路由。

由于拥有SPA,因此您应尽量避免打开新窗口,因为当前窗口中已加载了所有内容。用户可以通过浏览器的“后退”按钮轻松返回上一页,并且这几乎是瞬间的。

是否有特定的业务原因,因此必须将其放在新窗口中?

© www.soinside.com 2019 - 2024. All rights reserved.