gpt4 book ai didi

Javascript 模板(例如 Underscore/Lodash): informative advice

转载 作者:行者123 更新时间:2023-11-29 22:07:50 24 4
gpt4 key购买 nike

我目前正在学习 Javascript 模板,我有一个信息性问题。

与在服务器(例如 PHP)收集 html 字符串并通过 jQuery Ajax 调用返回它相比,使用来自服务器的 json 数据填充 javascript 模板有什么好处?

由于此模板是在客户端使用 Javascript 执行的,因此在服务器上创建模板会不会快很多(服务器比客户端更强大)?

做这个客户端的实际好处是什么?
我遇到了这个,因为我目前正在学习如何使用 Backbone 开发 SPA,我想将其与 Marionette 一起使用并需要。

谢谢。

最佳答案

你说服务器比客户端强大。是的,但是如果您有 1000 个请求该页面的客户呢?服务器变得很难,您尝试使用服务器端缓存、负载平衡等。所以客户端模板渲染允许每个客户端关心自己。它难以置信地卸载了服务器。例如,您可以提供一次 HTML 模板和 JavaScript 代码,浏览器将缓存它们。所以服务器甚至不会在当前客户端的每个下一个请求中发送这些东西,而只确保提供和操作它的实际数据,例如通过 REST 架构。通过这种方式,您主要只传输数据。Backbone 和其他客户端框架允许您卸载服务器。当每个客户端为自己呈现页面或页面的一部分时,它总是工作得更快。只需比较这两种情况下“GET Users”请求的响应:

JSON 响应 (REST) 用于客户端呈现:

[
{"name": "Jimmy", "email": "jimmy@gmail.com"},
{"name:" "Billy", "email": "billy@gmail.com"}
]

HTML 响应(传统)由服务器呈现:

<table>
<tr>
<td>
Jimmy
</td>
<td>
jimmy@gmail.com
</td>
</tr>
<tr>
<td>
Billy
</td>
<td>
billy@gmail.com
</td>
</tr>
</table>

显然,如果您有 100 个用户要呈现,您将有更多的 HTML 需要在服务器端呈现并通过 HTTP(CPU、RAM、带宽)传输。

但是在客户端呈现的情况下,您只需要一个表格模板和一个(!)表格行的模板(对于特定示例)来循环呈现用户。

所以服务端只关心数据,认证和授权。该应用程序是分布式的。您卸载服务器并允许浏览器执行所有非敏感工作。每个客户都关心自己。

关于Javascript 模板(例如 Underscore/Lodash): informative advice,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19937451/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com