Jquery 未知阵列数的多个$watchCollection?
我正在努力寻找一种将两个(目前)可排序列表中的数据保存到数据库的方法Jquery 未知阵列数的多个$watchCollection?,jquery,angularjs,jquery-ui,Jquery,Angularjs,Jquery Ui,我正在努力寻找一种将两个(目前)可排序列表中的数据保存到数据库的方法 $scope.dropTarget = null; $scope.$watchCollection('lists[0].items', function() { console.log('watch 0'); $scope.dropTarget = $scope.lists[0]; }); $scope.$watchCollection('lists[1].items', functio
$scope.dropTarget = null;
$scope.$watchCollection('lists[0].items', function() {
console.log('watch 0');
$scope.dropTarget = $scope.lists[0];
});
$scope.$watchCollection('lists[1].items', function() {
console.log('watch 1');
$scope.dropTarget = $scope.lists[1];
});
这段代码是我从另一个线程尝试的
但是,我拥有的列表数量将根据用户创建列表的方式而变化。有没有办法在数量未知的物品上使用$watchCollection
是否有更好的方法将角度ui可排序数据保存到mongo后端?以便保存移动到其他类别的项目
谢谢您应该使用平等手表:
$scope.$watch('lists', function(newVal, oldVal){
console.log('changed');
}, true);
每当列表中的某些内容发生更改时,这将触发,即使它是例如:lists[0]。item.property谢谢,但这是否有助于我找到目标容器?例如,这是angularui文档中的代码笔,我要寻找的是一种在拖放项目后获取第二个列表ID的方法。所以-itemA已经从categoryA移动到categoryB,所有这些最终都是mongo_id,以便可以在数据库中更新移动。但是在保存时,为什么不重新保存这两个列表呢?对我来说,这听起来像是你想要在列表上有一些“脏”的东西,然后只更新它们,如果我没弄错的话?如果我只有2个列表,这会起作用,但是如果我有5个呢?然后3个列表不会被更改,将整个批次重新发送到服务器将是一种浪费。所以,是的,对于改变了的列表来说,有点脏。原始问题中的示例效果很好,但前提是您知道列表的数量。