为了账号安全,请及时绑定邮箱和手机立即绑定

使用 echo 或 go 的模板在前端显示复杂数据是否合适?

使用 echo 或 go 的模板在前端显示复杂数据是否合适?

Go
Cats萌萌 2022-08-15 15:39:51
Go 的模板语法不具有在前端操作数据的能力。例如,从服务器发送地图,以显示地图中的所有数据,在html文件中,没有一种方法可以检查数组(地图中)的索引是奇数还是偶数。此外,无法在 html 模板中执行数学计算或字符串操作。所有数据都应在服务器端准备,然后发送到前端。这对于显示来说是可以的,但在循环中很困难。像 Vue 或 React 这样的前端框架足够强大,可以做到这一点,但是数据应该作为 JSON 发布。但是仅使用Go或Echo,您无法执行复杂的视图操作。这是正确的吗?
查看完整描述

1 回答

?
沧海一幻觉

TA贡献1824条经验 获得超5个赞

这实际上要视情况而定。当您需要在前端代码上具有交互性时,可以使用客户端/前端 SPA(单页应用程序)框架。此类要求由应用程序的 UX 需求定义。

就模板而言,你是对的。包括Go,Java,Node.js等在内的模板库都没有设计用于支持此类操作。理想情况下,如果您正在执行服务器呈现的Web应用程序,则必须在代码的控制器/模型部分中执行此类计算,然后将所有数据作为上下文发送到模板库或代码,其工作是将其格式化为HTML / JSON或XML。模板化解决方案不应具有如此复杂的数据操作行为。Echo

对于问题的标题:

使用 echo 或 go 的模板在前端显示复杂数据是否合适?

这绝对是一个坏主意 - 一条无处可去的道路。您必须处理 MVC 控制器或模型中的复杂数据,并让模板引擎简单地格式化该数据。或者,如果您正在执行单页应用程序或复杂的交互式UI应用程序,则通过REST / GraphQL API将数据公开为JSON,并让前端代码使用或调用这些API并执行进一步处理。fetchXHR


查看完整回答
反对 回复 2022-08-15
  • 1 回答
  • 0 关注
  • 93 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信