我希望用新文件覆盖 NLS 文件 (dijit/form/validate.js),或替换某些 NLS 字符串映射。我希望标准 Dijit 能够拾取此文件。
我不想删除标准 Dojo 库中的文件。我可以在 djConfig 中指定一个路径来按顺序搜索 NLS 文件的目录,以便选取我的新文件而不是原始文件吗?如果是这样,我该怎么做?
或者,我如何混合字符串的新定义,即
替换:
missingMessage: "This value is required.",
与:
missingMessage: "My string is here.",
最佳答案
如果您想按照您的要求进行操作并为 dijit/form/nls/validate
i18n 模块选择一个备用文件,您可以使用 map
property重新映射模块 ID (1.8+):
var dojoConfig = {
map: { dijit: {
'dijit/form/nls/validate': 'my/form/nls/validate',
'dijit/form/nls/en/validate': 'my/form/nls/en/validate',
// ... etc
} }
};
但是,覆盖验证小部件上的消息的标准和推荐方法是仅使用您自己的值设置消息属性:
define([
'dijit/form/ValidationTextBox',
'dojo/i18n!my/form/validate'
], function (ValidationTextBox, myI18n) {
var instance = new ValidationTextBox({ missingMessage: myI18n.missingMessage });
// ...
});
关于javascript - 替换 Dojo/Dijit NLS 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17342386/