gpt4 book ai didi

javascript - 如何配置 AngularJS ng Repeat 使用的数据

转载 作者:行者123 更新时间:2023-11-28 15:41:17 27 4
gpt4 key购买 nike

当为 AngularJS 配置数据时,如下所示:

array = {"0":{"type":"Rocker","price":51},"1":"type":"Car","price":26900}};

数据将加载到 HTML 中,但我不能对其进行排序或过滤。

如果我这样配置数据:

array = [{"type":"Rocker","price":51},"type":"Car","price":26900}];

数据将加载到 HTML 中,我可以对其进行排序和过滤。

我手动更改了数据以使其正常工作。但我需要代码来转换数据。

如何转换多维数组:

{key:{array},key:{array}}

数组结构:

[{array}, {array}]

以便 angularjs 能够对我的数据进行排序和过滤?

这是我尝试过的代码:

myControllers.controller('processData',
function getAndProcessData($scope) {
//Get JSON data as string from a DIV element
var storeData = document.getElementById('idStoreData').textContent;
console.log('storeData Before JSON: ' + storeData);

//Convert the string to JSON
storeData = JSON.parse(storeData);
console.log('storeData After: ' + storeData);

//Create an array object.
var valueForStore = [];

for (var storeKeyName in storeData) {
console.log("storeKeyName: " + storeKeyName);
console.log('Each loop field: ' + storeData[storeKeyName]);

valueForStore = valueForStore + storeData[storeKeyName];
};

//The variable "storeItemsData" is used by ng-repeat
$scope.storeItemsData = valueForStore;

};

当我使用上面的代码时,出现错误:

Error: [ngRepeat:dupes] http/errors.angularjs.org/1.2.16/ngRepeat/dupes?p0=entry%20in%20storeItemsData%20%7C%20filter%3Aentry%20%7C%20orderBy%3AstoreOrderProp&

最佳答案

你已经完成了大部分工作,我在上面的代码中看到的唯一问题是这一行:

valueForStore = valueForStore + storeData[storeKeyName];

我认为您正在尝试将一个项目附加到数组中,在这种情况下,语句应该是

valueForStore.push(storeData[storeKeyName]);

希望有帮助。

关于javascript - 如何配置 AngularJS ng Repeat 使用的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23707728/

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