gpt4 book ai didi

javascript - 如何解析 json 对象属性以将其绑定(bind)到控件

转载 作者:行者123 更新时间:2023-12-03 05:19:19 25 4
gpt4 key购买 nike

我在名为“详细信息”的模型中有以下 JSON 数据。我只想要表中具有 key:"month"属性的对象。为此,控件中有一个过滤器属性

   oData
details:
Array[4]
0:Object
1:Object
2:Object
editable:false
key:"year"
removeable:false
value:"2000"
3:Object
editable:false
key:"event"
removeable:false
value:"Day: TRUE, Night:False"
4:Object
editable:false
key:"month"
removeable:false
value:"Time: August, Valid:True,from 2016"

控制如下

createContent : function(oController) {
return new sap.m.Table({
columns: [
new sap.m.Column({
header: new sap.m.Text({
text: 'value',
})
}),
items: {
path: '/details',
filters: [ new sap.ui.model.Filter("key","EQ","month") ], //only display months
template: new sap.m.ColumnListItem({
cells: [
new sap.m.Text({
text: '{value}',
}),

现在在用户界面中我只有一列显示

          Time: August, Valid:True,from 2016

我想在两列中显示该值。我无法制作带有文本:“{value.time}”或文本:“{value.valid}”的项目,

最佳答案

数据“时间:8月,有效期:True,从2016年开始”是一个字符串。其内容不是有效的 json。

但是您可以使用格式化程序来提取字符串中所需的部分:

createContent : function(oController) {
return new sap.m.Table({
columns: [
new sap.m.Column({
header: new sap.m.Text({
text: 'Time',
})
}),
new sap.m.Column({
header: new sap.m.Text({
text: 'Valid',
})
}),
items: {
path: '/details',
filters: [ new sap.ui.model.Filter("key","EQ","month") ], //only display months
template: new sap.m.ColumnListItem({
cells: [
new sap.m.Text({
text: {path: "value", formatter: oController.extractTimeFromValue},
}),
new sap.m.Text({
text: {path: "value", formatter: oController.extractValidFromValue},
}),

在 Controller 中添加格式化函数,如下所示:

extractTimeFromValue:function(value){
var match = value.match(/Time:\s*(\w+)/);
if (match){
return match[1]; //return the first group (\w+)
}
return null;
},
extractValidFromValue:function(value){
var match = value.match(/Valid:\s*(\w+)/);
if (match){
return match[1]; //return the first group (\w+)
}
return null;
}

关于javascript - 如何解析 json 对象属性以将其绑定(bind)到控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41464116/

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