У меня есть сфера, как показано нижекак обновить элементы, содержащие отношение
$scope.phones = [
{
id: 4,
name: "nokia",
accessories: [
{id: 1, name: "headset"},
{id: 3, name: "keyboard"},
{id: 5, name: "charger"}
]
},
{
id: 5,
name: "samsung",
accessories: [
{id: 5, name: "charger"}
]
},
{
id: 6,
name: "iphone",
accessories: [
{id: 1, name: "headset"},
{id: 5, name: "charger"}
]
}
];
Например, они отображаются как
-> Phone name
-> accesories
Теперь мой случай
Если я обновлю аксессуар, который в связи с phone Я хочу обновлять записи, которые отображаются, но только те, которые связаны с обновленным аксессуаром. Я не хочу обновлять весь вид действия, но только записи, связанные с обновленным аксессуаром.
Как это сделать?
// редактировать
Я создал ручной обходной
$scope.editAcc = function (idx) {
for(var i = 0; i < $scope.phones.length; i++) {
var tmpPhone = $scope.phones[i];
for(var j = 0; j < tmpPhone.accessories.length; j++) {
var acc = tmpPhone.accessories[j];
if(acc.id == idx) {
acc.name = acc.name + " Z";
}
}
}
// вар акк = $ scope.accessories [IDX]; // acc.name = acc.name + "X"; };
Но ИМО должна быть некоторая функция, чтобы сделать это
чем разница? loop - это цикл – Fixus