angular - 从 API 获取 UI 显示相关数据
问题描述
从最佳实践的角度来看,是否可以从 API 中获取需要在 UI 上显示的友好名称或描述之类的内容?或者 API 是否应该忽略数据是如何显示给用户的?
解决方案
我认为从 API 中获取它很好。请注意,如果您支持多种语言,则需要返回多个标签或向 API 调用添加语言参数。
在 Angular 应用程序中的 api 命名和 UI 之间有一个映射。但是这样做的问题是,在对 api 的任何请求中过滤或使用它们时,我需要来回切换。
我可以理解为什么使用双向地图感觉不对,为此我建议您将这些字段作为对象处理。一个对象将有一个与 API 模式相对应的规范名称(称为 this slug
、canonical
、id
、value
等)和一个或多个 UI 标签(、label
、title
、translation
、singular
、plural
//en
等)。最简单的形式:es
de
interface Field {
value: string;
label: string;
}
当你的应用程序Field
从 API 接收到这个对象时,它应该将它作为一个完整的对象传递。UI 组件将通过访问特定属性来显示标签文本。但他们也可以访问整个对象,因此他们可以使用规范值发出 API 请求。
推荐阅读
- git - 控制面板的凭据管理器是否与 git 的凭据帮助程序凭据管理器和凭据管理器核心相同
- mysql - 如何在 Laravel 中进行手动查询
- angular - KeyCloak - 用户管理
- graph - 给定成本下图中访问的最大节点数
- reinforcement-learning - 为什么要为自定义环境继承 OpenAI 基础体操类
- php - http_code = 0 请帮帮我
- r - 如何在所有列中删除小于 10 的 nchar
- c# - 设置多个属性时,Mock Setup() 不起作用
- node.js - 将对象添加到从角度到 nodejs 的请求正文
- sql-server - 需要帮助将值添加到列表