2016-05-07 5 views
1

私はカスタマイズされたアングルグリッドスターダッシュボードを構築しています。ページをロードするには、私はこれが正常に動作し、ウィジェットは、私はページを再読み込みして前に私はそれらを残しただけのようですDB内のアングルグリッドスターストアの位置

function getDashboard() { 
     $scope.dashboard.widgets = []; 
     angular.forEach($scope.filtered_activities, function(object) { 
      $scope.dashboard.widgets.push(
       { 
        pk: object.pk, 
        process: object.process, 
        row: object.row, 
        col: object.col,      
        sizeY: object.sizeY, 
        sizeX: object.sizeX, 
       } 
      )   
     }); 
    }; 

データベースからGridsterウィジェットのサイズと内容、位置をロードする関数を呼び出しますputActivies(ウィジェット)はそれらをDBに格納します。

しかし、それらを別の位置にドラッグしたいとき、私はデータベースに格納されている位置だけを取得し、現在の位置は取得しません。

$scope.gridsterOptions = { 
     margins: [20, 20], 
     outerMargin: false, 
     pushing: true, 
     columns: 6, 
     rowHeight: 100, 
     draggable: { 
      handle: 'h2', 
      enabled: true, 
      stop: function(event, $element, widget) { 
       console.log(widget.col); 
       putActivities(widget); 
      } 
     }, 
     resizable: { 
     enabled: false, 
    } 
    }; 

したがって、console.log(widget.col)は私に現在のデータベース位置ではなくデータベース位置を与えます。 getDashboard()から行とcolプロパティを除外しても機能しますが、もちろん正しい位置にはありません。

widgets.col(およびrow)属性にアクセスするもう1つの方法はありますか?

私のHTMLは次のようになります。
のli gridster項目= "ウィジェット" NG・リピート= "dashboard.widgetsでウィジェット"

答えて

2

draggable: { handle: 'h2', enabled: true, stop: function(event, $element, widget) { console.log($element) putActivities($element); } }, これはあなたの仕事をするでしょう。 注:$ elementは、現在の位置(col、row)とサイズ(sizeX、sizeY)を格納する6xX、sizeY、col、rowのオブジェクトです

関連する問題