[regression] TextBox: possibility of "this.templateString is null" on custom dijit.form.TextBox extensions upgrading from 1.3 to 1.5
Developers upgrading from 1.3 to 1.4+ may experience an exception on any custom dojo.declare
d extensions of dijit.form.TextBox (or its subclasses such as ValidationTextBox), due to code that likely changed with the deprecation of templatePath
.
If a custom class declared based on TextBox has overridden its templateString
and set it to null (presumably to force templatePath
to take precedence), an exception will occur due to TextBox's postMixInProperties
method referencing templateString
with the assumption it is defined.
An example is attached; it might be easier to understand from there.
Obviously this can be solved if the developer simply brings their custom component up to date with the 1.4+ paradigm of using templateString
together with dojo.cache
, so this bug is likely low in priority; however, out of the box it will cause such customizations to break, which is undesirable - templatePath
is currently deprecated but not unsupported.
Attachments (1)
-
test_TextBoxExtension13.html (583 bytes) - added by Kenneth G. Franqueiro 11 years ago.
-
test to reproduce issue (run against a source distribution of dojo, revise path to dojo.js as necessary)
Download all attachments as: .zip
Change History (6)
Owner: |
set to Douglas Hays
|
Summary: |
[regression] possibility of "this.templateString is null" on custom dijit.form.TextBox extensions upgrading from 1.3 to 1.4+ →
[regression] TextBox: possibility of "this.templateString is null" on custom dijit.form.TextBox extensions upgrading from 1.3 to 1.4+
|
Milestone: |
tbd →
1.5.1
|
Status: |
new →
assigned
|
Summary: |
[regression] TextBox: possibility of "this.templateString is null" on custom dijit.form.TextBox extensions upgrading from 1.3 to 1.4+ →
[regression] TextBox: possibility of "this.templateString is null" on custom dijit.form.TextBox extensions upgrading from 1.3 to 1.5
|
Resolution: |
→ fixed
|
Status: |
assigned →
closed
|
Component: |
Dijit →
Dijit - Form
|
test to reproduce issue (run against a source distribution of dojo, revise path to dojo.js as necessary)