1
我有兩個簡單的列表,可以將問題拖入和拖出。每次我拖累的問題之一,它改變其「激活」狀態爲true或false:角度拖放
$scope.onDrop = function ($event, $data, array) {
if ($data.Active) {
$data.Active = false;
array.push($data);
}
else if (!$data.Active) {
$data.Active = true;
array.push($data);
}
};
這個偉大的工程,但我需要從能夠拖放到同一個列表,因爲他們限制用戶正在拖動,因爲這也會觸發onDrop函數。
我使用:http://angular-dragdrop.github.io/angular-dragdrop/
我剛開始用拖放但是從我可以告訴文檔的是,我不得不使用拖動通道/下降通道的屬性,但是我我很難理解他們是如何工作的。
在我的標記,我有兩個面板,像這樣:
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">
Aktiva frågor
</div>
<div class="panel panel-body">
<ul class="dnd"
drag-channel="A"
drop-channel="A"
ui-on-drop="onDrop($event,$data,activeQuestions)">
<li ui-draggable="true" drag="aquestion"
on-drop-success="dropSuccessHandler($event,$index,activeQuestions)"
ng-repeat="aquestion in activeQuestions track by $index">
{{aquestion.Name}}
</li>
</ul>
</div>
</div>
</div>
<div class="col-md-6">
<div class="panel panel-default">
<div class="panel-heading">
Inaktiva Frågor
</div>
<div class="panel panel-body" >
<ul class="dnd"
drag-channel="B"
drop-channel="B"
ui-on-drop="onDrop($event,$data,inactiveQuestions)">
<li ui-draggable="true" drag="iquestion"
on-drop-success="dropSuccessHandler($event,$index,inactiveQuestions)"
ng-repeat="iquestion in inactiveQuestions track by $index">
{{iquestion.Name}}
</li>
</ul>
</div>
</div>
</div>
我已經嘗試了所有種類的A與B的組合,但都不是工作,所以很明顯,我似乎不明白他們的邏輯。
或者,如果這不是解決問題的最佳方法,請讓我知道更好的方法。 :)
我相信我在找同樣的東西。你能顯示你的最終代碼嗎? – 2015-11-24 17:28:41
沒關係。得到它了。對於這樣做的其他人,我在'ui-draggable'元素中放入'drag-channel ='B'',在'ui-on-drop'中放入'drop-channel ='B'' – 2015-11-24 17:34:21