BackboneJS 單次監(jiān)聽(tīng)事件

2018-01-04 18:37 更新

描述

它與listenTo事件相同,但是會(huì)導(dǎo)致在回調(diào)函數(shù)被刪除之前只發(fā)生一次listen。

語(yǔ)法

object.listenToOnce(other, event, callback)

參數(shù)

other:定義其他對(duì)象的名稱。
event:它綁定一個(gè)對(duì)象。

callback:它是對(duì)代碼的引用,并以對(duì)象作為上下文調(diào)用。

<!DOCTYPE html>
  <head>
    <title>Event Once Example</title>
      <script src="https://code.jquery.com/jquery-2.1.3.min.js" type="text/javascript"></script>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.2/underscore-min.js" type="text/javascript"></script>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.2/backbone-min.js" type="text/javascript"></script>
  </head>
  <body>
     <script type="text/javascript">
     	//Create an object 'myVal' and 'myVal1' and extend them using Backbone.Events method
        var myVal = _.extend({name:'Saurav Ganguly'}, Backbone.Events);
        var myVal1 = _.extend({name:'Sachin Tendulkar'}, Backbone.Events);

        //created the 'listenMe' callback function and invoked when one object listen to particular event on another object
        var listenMe = function(){
           document.write("The value is: ");
           document.write(this.name);
        };

        //The object 'myVal1' listen once for the 'listenMe' event triggered on object 'myVal'
        myVal1.listenToOnce(myVal, 'listenMe', listenMe);

        //The 'myVal' has no listenMe event and display the value of 'myVal1'
        myVal.trigger('listenMe');
     </script>
  </body>
</html>

輸出

讓我們執(zhí)行以下步驟,看看上面的代碼如何工作:

  • 將上面的代碼保存在listentoonce.htm文件中。
  • 在瀏覽器中打開(kāi)此HTML文件。

The value is: Sachin Tendulkar


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)