簡體   English   中英

角度拖放

[英]Angular drag and drop

我有兩個簡單的列表,可以將問題拖來回去。 每次我拖動其中一個問題時,它的“活動”狀態都會變為是或否:

   $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/

我剛剛開始進行拖放操作,但是從文檔中可以得知,我必須使用drag-channel / drop-channel屬性,但是我很難理解它們的實際工作方式。

在我的標記中,我有兩個面板,如下所示:

        <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的各種組合,但是都沒有用,所以顯然我似乎不明白它們的邏輯。

或者,如果這不是解決問題的最佳方法,請讓我知道更好的方法。 :)

通過將Active邏輯移到我的代碼后面來解決它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM