嗨我正在关注这个https://github.com/marceljuenemann/angular-drag-and-drop-lists以构建一个嵌套的拖放,我需要设置dinamicaly容器ondragover的colums数量,但我不知道如何....我试过ondragstart但只有第二个容器设置列..
我试过这样的: 我打电话给Ondragstart:
$scope.setColumn = function(idSelected) {
var data=$scope.models.templates;
for (var j=0; j < data.length; j++) {
var type = JSON.parse(JSON.stringify(data[j].type));
var id = JSON.parse(JSON.stringify(data[j].id));
if(type=="container" && id==idSelected){
var column = JSON.parse(JSON.stringify(data[j].columns));
data[j].columns.push([]);
console.log(column);
}else{
continue;
}
}
};
但我需要一些东西,当我在dropzone并调用ondragover函数在运行时设置容器列,这可以做到吗?
我解决了这个问题:
类型容器的ondrop我显示一个模态,当我保存时,我调用具有列数的函数$ scope.numColumn:
$scope.saveColumn = function(evt,idSelected){
var a = $scope.setColumn($scope.numColumn);
var data = $scope.models.dropzones.A;
for (var j=0; j < data.length; j++) {
var id = JSON.parse(JSON.stringify(data[j].id));
var column = JSON.parse(JSON.stringify(data[j].columns));
var src = {columns: a};
if(idSelected==id){
var mergedObject = angular.merge(data[j],src);
}
}
this.a=null;
$('#setColumnContainer').modal('hide');
}
如果有更好的解决方案请告诉。