场景 1:使用两个容器让我们说A(Drag Source)和B(Drop Source)。
代码片段:
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作为拖放区和嵌套拖动的方法。
请建议。