将Dojo TabContainer与Dojox.mvc一起使用

将Dojo TabContainer与Dojox.mvc一起使用,dojo,Dojo,我试图将dijit/layout/TabContainer与dojox/mvc/Repeat一起使用。似乎由于独立选项卡窗格(contentPanes)不是选项卡容器的直接子级,因此它不会将它们呈现为选项卡。我最后有三个内容窗格,但没有选项卡 我已经创建了一个显示问题的粘贴箱。我已经包括了一个文本框,它绑定到有状态模型,以显示范围在中继器上是正确的 有人经历过这种情况或有其他选择吗?是一个不推荐使用的模块,因为它已被接管。它将允许您将一个模板小部件的多次出现作为另一个小部件的直接子部件,例如。

我试图将dijit/layout/TabContainer与dojox/mvc/Repeat一起使用。似乎由于独立选项卡窗格(contentPanes)不是选项卡容器的直接子级,因此它不会将它们呈现为选项卡。我最后有三个内容窗格,但没有选项卡

我已经创建了一个显示问题的粘贴箱。我已经包括了一个文本框,它绑定到有状态模型,以显示范围在中继器上是正确的

有人经历过这种情况或有其他选择吗?

是一个不推荐使用的模块,因为它已被接管。它将允许您将一个模板小部件的多次出现作为另一个小部件的直接子部件,例如。下面是一个例子:

<!DOCTYPE html>
<html>
    <head>
        <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/dojo/1.9.2/dojo/dojo.js" data-dojo-config="parseOnLoad: 0, async: 1"></script>
        <link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/dojo/1.9.2/dojo/resources/dojo.css">
        <link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/dojo/1.9.2/dijit/themes/claro/claro.css">
        <script>
            require([
                "dojo/_base/declare",
                "dojo/aspect",
                "dojo/parser",
                "dojox/mvc/getStateful",
                "dojox/mvc/Templated",
                "dojox/mvc/WidgetList",
                "dijit/layout/TabContainer",
                "dojox/mvc/Element",
                "dojo/domReady!"
            ], function(declare, aspect, parser, getStateful, Templated, WidgetList){
                tabRecords = getStateful({
                    items: [
                        {first: "Anne", last: "Ackerman"},
                        {first: "Ben", last: "Beckham"},
                        {first: "Chad", last: "Chapman"}
                    ]
                });
                declare("my.Templated", Templated, {
                    templateString: document.getElementById("innerTemplate").innerHTML
                });
                parser.parse();
            });
        </script>
        <script id="innerTemplate" type="dojox/mvc/InlineTemplate">
            <div>
                <div>First: <input type="text" data-dojo-type="dojox/mvc/Element" data-dojo-props="value: at('rel:', 'first')"></div>
                <div>Last: <input type="text" data-dojo-type="dojox/mvc/Element" data-dojo-props="value: at('rel:', 'last')"></div>
            </div>
        </script>
    </head>
    <body class="claro">
        <script type="dojo/require">at: "dojox/mvc/at"</script>
        <div data-dojo-type="dijit/layout/TabContainer"
            data-dojo-mixins="dojox/mvc/WidgetList"
            data-dojo-props="partialRebuild: 1, children: at(tabRecords, 'items')"
            data-mvc-child-type="my.Templated"
            data-mvc-child-props="title: at(this.target, 'first')">
        </div>
    </body>
</html>

要求([
“dojo/_base/declare”,
“dojo/aspect”,
“dojo/parser”,
“dojox/mvc/getStateful”,
“dojox/mvc/Templated”,
“dojox/mvc/WidgetList”,
“dijit/layout/TabContainer”,
“dojox/mvc/Element”,
“dojo/domReady!”
],函数(声明、方面、解析器、getStateful、模板化、WidgetList){
tabRecords=getStateful({
项目:[
{第一个:“安妮”,最后一个:“阿克曼”},
{第一个:“本”,最后一个:“贝克汉姆”},
{第一个:“乍得”,最后一个:“查普曼”}
]
});
声明(“我的模板”,模板{
templateString:document.getElementById(“innerTemplate”).innerHTML
});
parser.parse();
});
第一:
最后:
at:“dojox/mvc/at”
最好的


阿基拉

完美的阿基拉,正是我想要的。我已经将您的代码添加到这里的JS bin中