gpt4 book ai didi

knockout.js - Knockoutjs递归解包ko.observableArray

转载 作者:行者123 更新时间:2023-12-04 13:33:34 25 4
gpt4 key购买 nike

我有这种格式的javascript数组:

omega.franchiseInfo.rawdata = [{
Id: "Main",
Title: "Main",
Type: "main",
items: [{
Id: "Menu1",
Title: "Menu1",
Type: "menu",
items: [{
Id: "Menu1",
Title: "Menu1",
Type: "menu",
items: []
}]
}]
}];

每个项目都有一个属性项目,该属性项目是一个包含其他项目的数组。未指定数组的元素数。

我在阵列上使用基因 knockout 映射插件,使其成为observableArray。数组的所有成员也可以观察到。
omega.franchiseInfo.observableRawData = ko.mapping.fromJS(language.rawdata);

然后,我要完成的操作是将 omega.franchiseInfo.observableRawData展开为原始的纯JavaScript格式。这意味着等于 omega.franchiseInfo.rawdata。我知道 knockout 中有一些方法,例如 ko.utils.unwrapObservable,但javascript不是我的强项,因此我无法使其适用于我的情况。我还认为,将完成该功能的函数应该是递归的,以遍历数组中的所有项。

这是我的 fiddle :

http://jsfiddle.net/KHFn8/931/

如果有人可以帮助我并提供有效的代码,我将非常高兴。感谢您的时间和精力。

最佳答案

JsFiddle

您可以像这样将其转换回JavaScript对象:

ko.toJS(omega.franchiseInfo.observableRawData);

关于knockout.js - Knockoutjs递归解包ko.observableArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11881025/

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