📄 declare.js
字号:
/* Copyright (c) 2004-2006, The Dojo Foundation All Rights Reserved. Licensed under the Academic Free License version 2.1 or above OR the modified BSD license. For more information on Dojo licensing, see: http://dojotoolkit.org/community/licensing.shtml*/dojo.provide("dojo.lang.declare");dojo.require("dojo.lang.common");dojo.require("dojo.lang.extras");dojo.lang.declare = function (className, superclass, init, props) { if ((dojo.lang.isFunction(props)) || ((!props) && (!dojo.lang.isFunction(init)))) { var temp = props; props = init; init = temp; } var mixins = []; if (dojo.lang.isArray(superclass)) { mixins = superclass; superclass = mixins.shift(); } if (!init) { init = dojo.evalObjPath(className, false); if ((init) && (!dojo.lang.isFunction(init))) { init = null; } } var ctor = dojo.lang.declare._makeConstructor(); var scp = (superclass ? superclass.prototype : null); if (scp) { scp.prototyping = true; ctor.prototype = new superclass(); scp.prototyping = false; } ctor.superclass = scp; ctor.mixins = mixins; for (var i = 0, l = mixins.length; i < l; i++) { dojo.lang.extend(ctor, mixins[i].prototype); } ctor.prototype.initializer = null; ctor.prototype.declaredClass = className; if (dojo.lang.isArray(props)) { dojo.lang.extend.apply(dojo.lang, [ctor].concat(props)); } else { dojo.lang.extend(ctor, (props) || {}); } dojo.lang.extend(ctor, dojo.lang.declare._common); ctor.prototype.constructor = ctor; ctor.prototype.initializer = (ctor.prototype.initializer) || (init) || (function () { }); var created = dojo.parseObjPath(className, null, true); created.obj[created.prop] = ctor; return ctor;};dojo.lang.declare._makeConstructor = function () { return function () { var self = this._getPropContext(); var s = self.constructor.superclass; if ((s) && (s.constructor)) { if (s.constructor == arguments.callee) { this._inherited("constructor", arguments); } else { this._contextMethod(s, "constructor", arguments); } } var ms = (self.constructor.mixins) || ([]); for (var i = 0, m; (m = ms[i]); i++) { (((m.prototype) && (m.prototype.initializer)) || (m)).apply(this, arguments); } if ((!this.prototyping) && (self.initializer)) { self.initializer.apply(this, arguments); } };};dojo.lang.declare._common = {_getPropContext:function () { return (this.___proto || this);}, _contextMethod:function (ptype, method, args) { var result, stack = this.___proto; this.___proto = ptype; try { result = ptype[method].apply(this, (args || [])); } catch (e) { throw e; } finally { this.___proto = stack; } return result;}, _inherited:function (prop, args) { var p = this._getPropContext(); do { if ((!p.constructor) || (!p.constructor.superclass)) { return; } p = p.constructor.superclass; } while (!(prop in p)); return (dojo.lang.isFunction(p[prop]) ? this._contextMethod(p, prop, args) : p[prop]);}, inherited:function (prop, args) { dojo.deprecated("'inherited' method is dangerous, do not up-call! 'inherited' is slated for removal in 0.5; name your super class (or use superclass property) instead.", "0.5"); this._inherited(prop, args);}};dojo.declare = dojo.lang.declare;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -