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(...){...}

    }

)

   能够比较方便的继承控件,编写本身的控件

相关文章
相关标签/搜索