场景1:使用两个容器,比如A(拖放源)和B(拖放源)。
代码片段:
dragularService(containerLeft, {
containersModel: [DragularconTainer],
copy: true,
canBeAccepted: function(el, source) {
var elementDrag = angular.element(el)
return false;
},
revertOnSpill: true,
isContainer: function isContainer(el) {
return el.id === 'filler';
},
isContainerModel: function getModel() {
return $scope.TestModel;
},
scope: $scope
}); 场景2:使用B(Drop Source)进行嵌套拖放。
var container = containerRight,
parentContainers = container.children(),
nestedContainers = [];
console.log(parentContainers);
console.log($element.children());
dragularService(container, {
revertOnSpill: true,
moves: function(el, container, handle) {
return handle.classList.contains('row-handle');
},
containersModel: $scope.object,
nameSpace: 'rows'
});
// collect nested contianers
for (var i = 0; i < parentContainers.length; i++) {
nestedContainers.push(parentContainers.eq(i).children()[1]);
}
dragularService(nestedContainers, {
revertOnSpill: true,
moves: function(el, container, handle) {
return !handle.classList.contains('row-handle');
},
containersModel: (function getNestedContainersModel() {
var parent = $scope.objects,
containersModel = [];
for (var i = 0; i < parent.length; i++) {
containersModel.push(parent[i].test);
}
return containersModel;
})(),
nameSpace: 'cells'
});问题:场景1 "canBeAccepted:“与isContainerModel一起使用时不起作用。它应该根据返回给函数的布尔值工作。
验证: 1.使用容器B作为放置区域和嵌套拖动的方法。
请建议一下。
发布于 2017-03-27 20:20:36
在github在此发行上解决。canBeAccepted中有一个bug!现在修好了。
https://stackoverflow.com/questions/42926566
复制相似问题