gpt4 book ai didi

javascript - 尝试使用自动完成推送添加对象时缺少 $$Hashkey

转载 作者:行者123 更新时间:2023-11-29 21:52:37 25 4
gpt4 key购买 nike

带有硬编码对象的数组出现在我的 ng-repeat 中。

  $scope.deltagarelist = [{ label: "Nils", value: "3" }];

这是我的 javascript/angular 混合代码,用于从自动完成中获取选定的值并将其推送到我的对象数组中。

  $(".addDeltagare").autocomplete(
{
source: function (request, response) {

$.ajax({
url: url,
data: { query: request.term },
datatype: 'jsonp',

success: function (data) {


response($.map(data, function (item) {
return {

label: item.Label,
value: item.Value
}
}));
}


});


},
minLength: 3,
select: function (event, ui) {
event.preventDefault();

addtolist(ui.item);
console.log($scope.deltagarelist);

$(this).val('');

},
focus: function (event, ui) {
$("#addDeltagare").val(ui.item.label);
return false;
}

});

还有我将对象插入我的列表的函数。

function addtolist(item) {

$scope.deltagarelist.push({label:item.label,value:item.value});

我的问题是我的硬编码人员“Nils”获得了一个 $$hashkey,但是当我以这种方式将一个对象添加到列表中时,它没有获得一个 hashkey,它添加到数组中但没有出现在我的重复中。关于如何更改此代码以使其工作的任何想法?还是我应该寻找其他更“Angular 方式”的自动完成?

最佳答案

解决方案是在 ng-repeat 中添加一个 track by 这样 AngularJS 就不需要使用 $$hashkey 来跟踪变化。

<div ng-repeat="val in deltagarelist track by val.value">

关于javascript - 尝试使用自动完成推送添加对象时缺少 $$Hashkey,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28300392/

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