У меня есть массив дерева, как это:
Array
(
[attributes] => Array
(
[attribute_group_id_6] => Array
(
[id] => 6
[name] => Processor
[items] => Array
(
[0] => Array
(
[product_id] => 40
[attr_id] => 1
[attr_text] => demo
[attr_group_id] => 6
[attr_group_order] => 1
[attr_group_name] => Processor
)
[1] => Array
(
[product_id] => 28
[attr_id] => 2
[attr_text] => 10
[attr_group_id] => 6
[attr_group_order] => 5
[attr_group_name] => Processor
)
[2] => Array
(
[product_id] => 28
[attr_id] => 3
[attr_text] => 777
[attr_group_id] => 6
[attr_group_order] => 3
[attr_group_name] => Processor
)
)
)
)
)
И цель состоит в том, чтобы wathc items.[N].product_id
изменения.
Этот код может видеть изменения, но он видит все 3 изменения одновременно.
$scope.$watch('filterData.attributes.items', function(val, old) {
console.log('watch');
}, true);
console:
watch
watch
watch
Значение изменяется с помощью текстового поля:
есть проблемы качества - как смотреть только одно изменения? (attributes.attribute_group_id_6.items.[N].product_id)
Непонятная вещь: есть ли 3 изменения или только одно изменение срабатывало несколько раз? – ABOS