2016-08-18 55 views
0

我有一個發佈到PubSub的咖啡功能,還附加創建的元素到列表這裏是組事件監聽器只執行上創建

handle_comments = -> 
    commentId = $('.question_comments').data('commentId') 
    PrivatePub.subscribe commentId, (data, channel) ->   
    res = $.parseJSON(data.comment_res.comment) 
    result = JST["templates/create_comment"] 
     user_name: data.comment_res.user 
     comment_body: res.body 
     comment_id: res.id 
    $('.question_errors').html("") 
    $('.comments_list').append(result) 
    $('.new_comment').find('#comment_body').val('')  

$(document).ready(handle_comments)||$(document).on('page:load',  handle_comments)||$(document).on('page:update', handle_comments) 

現在我有一個問題,這個函數執行每次我在頁面上更改水印(如刪除節點或其他)。我需要一種方法來設置它僅在創建註釋時執行。 p.s.處理程序就緒,頁面:載入和頁面:更新設置爲避免turbolinks問題。對不起,我英文很差。會爲每一個建議

回答

0

出來,我發現最簡單的方式感恩,是設置一個標誌控制器動作

PrivatePub.publish_to "https://stackoverflow.com/questions/#{@commentable.id}/comments", comment_res: { comment: @comment.to_json, user: current_user.name, **method: self.action_name** } 

甚至不太複雜的可執行文件:真(有點類似遠程:真正的:) ) 如果你確實知道一些其他的變種,我會很好奇,看他們