Backbone中View之間傳值的學習心得
Backbone中的View就是用來展示由Model層傳出的數(shù)據(jù),或者在View里產(chǎn)生的一些數(shù)據(jù),包括輸入框中輸入等產(chǎn)生的數(shù)據(jù),由當前View傳遞到另外一個View層里,應該怎么辦呢,我之前讀到一位博主《Backbone View的三種通信方式 》寫的尤為的清晰,在我實際的項目中,常常使用的也就是最后一種方式。
嘿嘿,分享知識是一件快樂的事情,我就直接借鑒表述一下如下:
直接用 Backbone 作為事件注冊機,
代碼如下:
var ApplicationView = Backbone.View.extend({ initialize : function(){ this.documentView = new DocumentView(); this.sidebarView = new SidebarView(); }, }); var DocumentView = Backbone.View.extend({ onEdit : function(){ Backbone.trigger('documentEdit'); } }); var SidebarView = Backbone.View.extend({ initialize : function(options){ Backbone.on('documentEdit', this.onDocumentEdit, this); }, onDocumentEdit : function(){ // react to document edit. } });
使用Backbone 時間注冊機方法,不僅僅能夠實現(xiàn)同一個父級View下不同的子級View之間的信息傳遞,并且還能夠實現(xiàn)不同父級View下各個子級View的信息傳遞,我當時剛接觸的時候感覺這個方法特別的好使,但是后來又出現(xiàn)了兩個我有點困惑的地方,我也一并分享下。
第一個就是當我們由父級View向子級View傳遞信息或者數(shù)據(jù)的情況,用事件注冊應該也是可以的,但是在項目中,我采用的是在初始化視圖的時候,將父級View中的要傳遞的信息分配個子View,這樣視圖render出之后,就已經(jīng)有了父級View給予它的數(shù)據(jù)。就如這樣:
this.receive是由父級View已經(jīng)包裝好的,在初始化子View時候就把this.receive下發(fā)就好了。
第二種情況就是同一個子級View之間的傳遞,這種情況可能大家都懂的,我還是解釋一下吧,就是在一個子級View里面定義一個針對這一個View的全局變量,然后通過this引用這個變量就Ok。
以上所述是小編給大家介紹的Backbone中View之間傳值的學習心得,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
深入解析JavaScript框架Backbone.js中的事件機制
這篇文章主要介紹了JavaScript框架Backbone.js中的事件機制,其中涉及到Backbone的MVC結構及內(nèi)存使用方面的很多知識,需要的朋友可以參考下2016-02-02關于backbone url請求中參數(shù)帶有中文存入數(shù)據(jù)庫是亂碼的快速解決辦法
這篇文章主要介紹了關于backbone url請求中參數(shù)帶有中文存入數(shù)據(jù)庫是亂碼的快速解決辦法的相關資料,需要的朋友可以參考下2016-06-06詳解Backbone.js框架中的模型Model與其集合collection
這篇文章主要介紹了Backbone.js框架中的模型Model與其集合collection,Backbone擁有與傳統(tǒng)MVC框架相類似的Model與View結構,需要的朋友可以參考下2016-05-05BackBone及其實例探究_動力節(jié)點Java學院整理
這篇文章主要介紹了BackBone及其實例探究,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-07-07