在Dojo中创建小部件

时间:2012-08-24 12:43:16

标签: javascript html mobile dojo dojox.mobile

我正在使用Dojo Toolkit开发移动应用程序。 我想制作以下小部件:

<div data-dojo-type="dojox.mobile.ListItem" data-dojoprops="moveTo:'breakdown'">
    <div>Maximum: Some value</div>
</div>

我希望能够像这样使用小部件:

<div data-dojo-type="dojox.mobile.RoundRectList">
    <div data-dojo-type="MyWidget" data-dojo-props="maximum:'1200'"></div>
</div>

这就是我到目前为止所做的:

require(
    [ "dojo/_base/declare", "dojo/parser", "dojo/ready",
        "dojox/mobile/ListItem", "dijit/_WidgetBase",
        "dijit/_TemplatedMixin" ],

        function(declare, parser, ready, ListItem, _WidgetBase, _TemplatedMixin) {
            declare("MyWidget", [ ListItem, _WidgetBase, _TemplatedMixin ], {

                templateString: "<div>"         
                              + "<div>Maximum: <span data-dojo-attach-point='maximumNode'></span></div>"
                              + "</div>",

                maximum : "unknown",
                _setMaximumAttr : { node : "maximumNode", type : "innerHTML" },

                buildRendering : function() {
                    this.inherited(arguments);
                }
            });

            ready(function() {
                parser.parse();
            });
        });

我没有错误或类似的东西,页面没有加载。 该代码有什么问题?

1 个答案:

答案 0 :(得分:1)

我写了这个简单的例子。

从您的代码段我怀疑您可能想要做这样的事情http://jsfiddle.net/hJJUD/7/

我建议不要从listItem更改模板,而是尝试使用它具有的属性。请查看此文档http://dojotoolkit.org/reference-guide/1.8/dojox/mobile/ListItem.html

如果您发现自己需要什么,请告诉我。