dojo.mixin、dojo.extend、dojo.declare

dojo源碼裏,大量使用 dojo.mixin、dojo.extend、dojo.declare 三個方法。做用均爲擴展dojo基類。this

1、dojo.mixinspa

dojo.mixin用於擴展一個實例對象,如對象

var obj = {a:1,b:2}繼承

dojo.mixin(obj,{c:3,d:4})源碼

那麼如今的obj爲{a:1,b:2,c:3,d:4}it

2、dojo.extendio

dojo.extend用於擴展一個類對象,在實際應用中我主要用來擴展dojo控件。如給dijit.Dialog擴展一個setTitle方法function

dojo.extend(dijit.Dialog,{擴展

     setTitle:function(name){方法

            this.set('title',name)

    }

})

這樣在建立Dialog對象後,就包含的 setTitle 的方法。

3、dojo.declare

dojo.declare在控件裏被大量應用,緣由是dojo.declare能夠聲明一個類,而不污染繼承的類。能夠用面嚮對象語言裏的多重繼承理解。好比 我要聲明一個對話框類,這個對話框有特殊的樣式。

dojo.declare(

    "myDialog",

    dijit.Dialog,

    {

        style:...,

        setTitle:function(...){...}

    }

)

   能夠比較方便的繼承控件,編寫本身的控件

相關文章
相關標籤/搜索