dijit.Dialogを拡張し、テンプレートを追加しています。
定義([
"dojo / _base / describe"、
「dijit/Dialog」、
"dijit / _TemplatedMixin"、
"dijit / _WidgetsInTemplateMixin"、
"dojo / data / ItemFileWriteStore"、
"dojo / text!ps / templates / PrintDialog.html"、
"dijit / form / ComboBox"、
「dijit/form / Button」、
「dojox/widget / Standby」、
"dojox / layout / TableContainer"、
「dijit/form/CheckBox」
]、関数(declare、Dialog、TemplatedMixin、_WidgetsInTemplateMixin、ItemFileWriteStore、template){
戻り値declare( "ps.PrintDialog"、[Dialog、TemplatedMixin、_WidgetsInTemplateMixin]、{
templateString:template、
widgetsInTemplate:true、
私のテンプレートでは:
<select data-dojo-type = "dijit.form.ComboBox" id = "format" name = "format" data-dojo-attach-point = "formatCombo" title = "Format">
<select data-dojo-type = "dijit.form.ComboBox" id = "layout" name = "layout" data-dojo-attach-point = "layoutCombo" title = "Layout">
アタッチポイントの使用法は次のとおりです。
this.formatCombo.attr('store'、this.formatStore);
this.layoutCombo.attr('store'、this.layoutStore);
これで、初めて新しいダイアログを作成するときに、正常に機能します。次にダイアログを閉じて新しいダイアログを作成すると、this.formatComboとthis.layoutComboが未定義になり、コードが失敗します。