簡體   English   中英

在余燼中,如何將視圖數據從拖動傳遞到放置?

[英]In ember, how do I pass view data from a drag into a drop?

我正在使用ember Latest和jquery.ui的Draggable和Droppable。 我還使用了一些天才的余燼人創建的mixins,以便在余燼中創建可拖動和可拖放視圖。 這是小提琴:

http://jsfiddle.net/inconduit/6n49N/7/

我需要將視圖的內容附加到拖動事件,以便可以在放置事件中訪問它。 使用jquery,我知道你會做$(..)。draggable({..})。data(“ myData”,“一些數據在這里”); 但是我不知道如何在該余燼實現中引用視圖的內容。

這是小提琴中來自App.Draggable的片段:

  App.Draggable = JQ.Draggable.extend({
     appendTo: 'body',
     helper: function() {
          $(this).data("myData","this is where actual data would go");

JQ.Draggable擴展了Ember.View。 在helper()函數內部,“ this”是指實際的DOM元素,我不知道如何引用View的變量。 我想傳遞視圖的內容,以便可以在這里檢索它:

  App.Droppable = JQ.Droppable.extend({
      drop: function(event,ui) {
          alert('Dropped! ' + $(ui.draggable).data("myData"));

可拖動的模板如下所示:

  {{#view App.Draggable contentBinding="App.anObject"}}Drag me{{/view}}

我想傳遞該內容。 請看一下小提琴,相關功能在javascript的底部定義。

在這里回答我自己的問題。

我將數據附加到didInsertElement回調中,如下所示:

App.DraggableDataView = App.Draggable.extend({
    didInsertElement: function() {
        this._super();
        var element = this.get('element');
        $(element).data('myData',this.get('content'));
    },
});

暫無
暫無

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

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