什么时候应该使用命名类,什么时候应该使用匿名类?
在 Dojo 1.8 之前,您需要使用第一个参数来提供一个类名,该类名既用于在命名空间中定义类,也用于 dojo 解析器(用于声明性标记)在 dojoType 属性中。
如何在应用程序中创建我的类的实例?
// First make sure to import/alias the declare module in your application module that will be declaring the new class:
// define([dojo/_base/declare],function(declare){}){
// From 1.8+, you don't need the class name parameter.
// Supplying the name provides no additional value.
declare(null, {
// Custom properties and methods here
});
可在此处找到 dojo 声明的官方参考指南页面以及更多信息:http: //dojotoolkit.org/reference-guide/1.9/dojo/_base/declare.html#dojo-base-declare
这是什么意思?它不再与解析器相关。过去,dojo 解析器在解析 html 片段以将 data-dojo-type="" 与这些类名匹配时使用类名参数。现在您可以只输入 AMD 模块标识符,例如。模块的“dijit/Button”返回小部件的构造函数,解析器可以自动加载和实例化小部件,而无需使用类名。