gpt4 book ai didi

javascript - 服务器端和 javascript 生成的 HTML - 如何组合?

转载 作者:行者123 更新时间:2023-11-27 22:48:24 26 4
gpt4 key购买 nike

我通常是一个有创造力的女孩,但现在我找不到任何好的解决方案。 HTML(例如表单行或表格行)是基于 javascript 和服务器端生成的,在这两种情况下完全相同。它是在您打开页面时在服务器端生成的(对于 Google,它必须保留在服务器端)并且由 AJAX 生成,以显示实时更新或通过新的空行扩展表单。

问题是:HTML 生成例程现在存在两次,你知道 DRY(不要重复你自己),是吗?每次更改内容时,我都必须编辑 2 个地方,这不符合我对好软件的看法。

结合基于 javascript 和服务器端 HTML 生成的最佳策略是什么?

PS:服务器端语言总是不同的(PHP、RoR、C++)。

PPS:请不要给我一个关于 Node.JS 的答案,我可以自己解决 ;-)

最佳答案

这是 Ruby on Rails 解决方案:

每个模型都有自己的部分。例如,如果您有模型 Post 和 Comment,您将有 _post.html.erb 和 _comment.html.erb

当您调用“render @post”或“render @comment”时,RoR 将查看对象的类型并决定使用哪个部分。

这意味着您可以在许多不同的 View 中以相同的方式将对象变红。
IE。在正常响应或 AJAX 响应中,您总是调用“render @post”

编辑:
如果您想在不连接服务器的情况下在 JS 中呈现内容(例如,您从不同的服务器或其他服务器获取数据),您可以使用我提到的方法制作一个 JS 模板,将其发送到客户端,然后让客户端使用该模板渲染新对象。对于 JS 模板插件,请看这个:http://api.jquery.com/category/plugins/templates/

关于javascript - 服务器端和 javascript 生成的 HTML - 如何组合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5641124/

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