gpt4 book ai didi

javascript - 通过对象id从knockout observable数组中获取JSON对象

转载 作者:行者123 更新时间:2023-11-28 15:49:05 25 4
gpt4 key购买 nike

除了显示简单字符串数组的 ko.observablearrays 基本示例之外,我找不到任何其他内容。我有一个可观察数组,其中包含一个带有很多属性的较大 JSON 对象。我需要根据数组中的 id 属性获取数组中的对象之一。我有这个代码来获取 Id:

self.selectedOrgId.subscribe(function (currentOrgId) {
alert(currentOrgId);
}, self);

我的可观察数组是通过 ajax get 请求填充的,看起来像这样:

[
{"userGuid":"37ab100e-f97b-462a-b3f4-79b8fbe24831",
"orgId":1,
"orgName":
"company ltd",
"isHiring":true,
...snip...}
more...
]

如何查看我的数组并获取具有我拥有的 orgId 的对象?

最佳答案

当您需要根据 id 查找特定对象时,可以使用 ko.utils.arrayFirst 如下:

var selectemItemID = '1';
var selectemItem = ko.utils.arrayFirst(this.items(), function(i) {
return i.orgId == selectemItemID;
});

但您也可以创建一个计算属性,根据所选项目 ID 返回所选项目。

self.selectedItem = ko.computed({
read : function(){
return ko.utils.arrayFirst(this.items(), function(i) {
return this.selectedOrgId() == i.orgId;
});
},
owner : self
});

关于javascript - 通过对象id从knockout observable数组中获取JSON对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21211000/

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