0

ContentPaneから派生した次のサブクラスがあります。

define([
        "dijit/layout/ContentPane",
        "dojo/_base/declare"
    ],

    function (ContentPane, declare) {
        var view = declare("client.View", ContentPane, {
            html: null,
            constructor: function (args) {
                declare.safeMixin(this, args);
                if (this.html !== null) {
                    this.set("content", this.html);
                }
            }
        });
        return view;
    }
);

ここで、次のコードは「this.set( "content"、this.html);」にTypeErrorをスローします。ライン:

var html = "<div>Hello</div>";
var view = View(html);

ContentPaneのコンテンツを適切に設定するにはどうすればよいですか?

4

1 に答える 1

1

Ken Benjaminは、Dojo Community(http://dojotoolkit.org/community/)に関する私の質問に答えました。

ウィジェットのライフサイクルの早い段階でコンテンツを設定しようとしています。コンストラクターではなくpostCreateで実行してみてください。

ウィジェットのライフサイクルについて詳しくは、http://dojotoolkit.org/documentation/tutorials/1.6/understanding_widget/をご覧ください。

于 2012-05-17T03:57:15.583 に答える