Отделите span в своем собственном виджетах, и вы можете добавить их к родителям, как это.
шаблона Родителя, который содержит панели контента
<div style="width: 100%; height: 100%;">
<div data-dojo-type="dijit/layout/LayoutContainer" style="width: 100%; height: 100%" data-dojo-attach-point="mainNode">
<div data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'top'" >
<div >
<!--some content-->
</div>
</div>
<div data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'center'" id="center">
<div data-dojo-attach-point="centerNode"></div>
</div>
</div>
</div>
В методе поста своего родительского виджета создать новый экземпляр ребенка и прикрепить его к родителю
define([
"dojo/_base/declare",
"dijit/_WidgetBase",
"dijit/_TemplatedMixin",
"dijit/_WidgetsInTemplateMixin",
"dojo/text!./templates/Parent.html",
"somePath/childWidget",
'dojo/domReady!'
], function (
declare,
_WidgetBase,
_TemplatedMixin,
_WidgetsInTemplateMixin,
parentTemplate,
ChildWidget
) {
return declare([_WidgetBase, _TemplatedMixin, _WidgetsInTemplateMixin], {
templateString: parentTemplate,
postCreate: function() {
this.inherited(arguments);
var myChild = new ChildWidget();
myChild.placeAt(this.centerNode);
myChild.startup();
}
});
});
Тогда, поскольку промежуток находится внутри его собственного виджета, вы можете иметь шаблон для того, что выглядит этой
<div>
<span data-dojo-attach-point="spanNode"></span>
</div>
Так что теперь пролете присоединять точка отсоединяется от родителя. Вы можете напрямую ссылаться на «spanNode» из виджета, созданного для диапазона.
декларативно в вашем childWidget, который содержит оболочку вы можете дать дать ему имя класса, как этот
return declare("childWidget", [_WidgetBase, _TemplatedMixin, _WidgetsInTemplateMixin], { ...
И в родительском шаблоне вместо того, чтобы использовать прикрепить точку, чтобы прикрепить использование виджета данных-додзё Тип типа
<div data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'center'" id="center">
<div data-dojo-type="childWidget"><!--child widget will get attached here--></div>
</div>
Вы размещаете все их в одном шаблоне - родительском? И что вы подразумеваете под привязкой вложенных виджетов к child1, а не к родительскому? – erotavlas
Да, все в одном шаблоне. По привязке данных к child1 я имею в виду data-dojo-attach-point для child1, а не родительский, который по умолчанию – user7142947
Насколько я знаю, точки прикрепления шаблона всегда относятся к связанным с ним виджетам, а не к дочерним виджетам, которые вы приложите к нему. Таким образом, от ребенка вы должны получить ссылку на родительский виджет, чтобы получить доступ к точкам присоединения, определенным в родительском шаблоне. Но что вы пытаетесь сделать? Вы должны предоставить более подробную информацию в своем посте, возможно, есть лучший дизайн, который может достичь той же цели. – erotavlas