【问题标题】:Angular Drag and Drop pass in Parameter within jqyoui-draggablejqyoui-draggable 中的参数中的角度拖放传递
【发布时间】:2018-01-07 06:04:32
【问题描述】:

我正在使用角度拖放,但我无法通过 onStart、onDrag、onDrop 或 onStop 将参数传递给控制器​​。我有许多不同的变体,如下所示,但似乎没有任何效果:

jqyoui-draggable="{onStart: 'onSegmentDragStart(event, ui, timeSegment)'}"

jqyoui-draggable="{onStart: 'onSegmentDragStart({{timeSegment}})'}"

jqyoui-draggable="{onStart: 'onSegmentDragStart({{timeSegment : timesegment}})'}"

<div>
  <div ng-repeat="timeSegment in $ctrl.deal.deal_settings.dayparting.schedule[dayName]">
    <div  class="time-segment-grid"
          ng-style="$ctrl.timeSegmentGridStyle(timeSegment)"
          uib-tooltip="{{ $ctrl.timeSegmentGridTooltipText(timeSegment) }}"
          tooltip-append-to-body="true"
          tooltip-class="deal-dayparting-grid-tooltip"
          ng-click="$ctrl.toggleTimepicker(dayName)"

          data-drag="true"
          data-segment-id="$index",
          jqyoui-draggable="{
              onStart: 'onSegmentDragStart(timeSegment)',
              onDrag: 'onSegmentDragDrag(timeSegment)',
              onStop: 'onSegmentDragStop(timeSegment)',
          }"
      >
    </div>
  </div>
</div>

【问题讨论】:

    标签: angularjs typescript drag-and-drop angular-dragdrop


    【解决方案1】:

    在另一个answer 中,我找到了一个可能的解决方案,他们声明了选项,然后在模板中使用了这些选项。所以在你的情况下,你可以添加一个新的数据属性来保存data-timeSegment= "timeSegment",然后在处理程序中检索它:

    $scope.dragOptions = {
        start: function(e) {
          $(e.currentTarget).data("data-timeSegment");
        },
        drag: function(e) {
          
        },
        stop: function(e) {
          
        },
        container: 'container-id'
    }
    

    【讨论】:

      猜你喜欢
      • 2019-06-26
      • 2015-02-26
      • 2017-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-23
      • 1970-01-01
      相关资源
      最近更新 更多