星空网 > 软件开发 > Java

Kendo Grid控件中将枚举值转为枚举名显示

我们在开发过程中经常会遇到需要将枚举值转换成名称进行显示的情况。如下我们有这样一个数据源对象:

var users = [    {id: 1, name: "similar1", status: 1},    {id: 2, name: "similar2", status: 2}  ];

 

其中字段 status 代表的是用户的状态, 1 代表 “可用”, 2 代表 “禁用”。我们使用 kendo grid 常规配置如下:

columns: [    { field: "id", title: "编号" },    { field: "name", title: "用户名" },    { field: "status", title: "状态" }  ],

 

对应的效果如下图所示:

Kendo Grid控件中将枚举值转为枚举名显示

 

由上图可见,我们的状态那一列直接就是显示的数字 1,2 ,这并不是我们想要的结果。我们需要的是将1,2分别转换成文字:可用,禁用。起初我想到的是通过 template 进行条件判断,当 status 为1时,显示 可用, 为2时, 显示 禁用。 代码如下:

columns: [    { field: "id", title: "编号" },    { field: "name", title: "用户名" },    { field: "status", title: "状态", template: "#= (status == 1) ? '可用' : '禁用' #" }  ]// 或者columns: [    { field: "id", title: "编号" },    { field: "name", title: "用户名" },    { field: "status", title: "状态", template: "#if (status == 1) {# 可用 #}else{# 禁用 #}#" }  ]

 

之后觉得这种方法太烂了,自己似乎接受不了。这种模板判断的方式维护性太低了,哪天如果加了几个状态,那就得写一堆的if。因此又去查找官方api文档,想寻找更好的解决方案,于是就有以下的收获,代码如下:

//1. 首先我们定义一个类似枚举功能的对象var statusEnum = [  {text: "可用", value: 1},  {text: "禁用", value: 2}  ]//2. 之后对kendo grid中的配置做如下调整columns: [    { field: "id", title: "编号" },    { field: "name", title: "用户名" },    { field: "status", title: "状态", values: statusEnum }  ]

 做完上面2步就ok了,这种方式是不是更容易被接受呢? 维护起来比之前简单了,看着也明了.....




原标题:Kendo Grid控件中将枚举值转为枚举名显示

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

跨境电商shopify 独立站如何引流量 上篇(付费流量版):https://www.ikjzd.com/articles/130215
备货这些热销商品,这个旺季赚得满堂红!:https://www.ikjzd.com/articles/130216
除了转化率还有什么影响店铺流量?:https://www.ikjzd.com/articles/130217
大批亚马逊卖家旺季前被收割,60多万被扣,杀伤力太强:https://www.ikjzd.com/articles/130219
阿里国际站店铺诊断攻略!(深度分析):https://www.ikjzd.com/articles/130220
万圣节旺季在即,送你一份远离侵权风险指南!:https://www.ikjzd.com/articles/130222
2024.04.18亚马逊选品推荐(仅供参考):女装蛋糕连衣裙:https://www.kjdsnews.com/a/1842234.html
欧洲市场疯了,订单排到7、8月!:https://www.kjdsnews.com/a/1842235.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流