替换Dojo/Dijit NLS字符串

Replacing Dojo/Dijit NLS strings

本文关键字:NLS 字符串 Dijit Dojo 替换      更新时间:2023-09-26

我希望用新文件覆盖NLS文件(dijit/form/validate.js),或者替换一些NLS字符串映射。我希望这个文件能被标准的迪吉兹人捡到。

我不希望删除标准Dojo库中的文件。我可以在djConfig中指定一个路径来按顺序搜索NLS文件的目录吗?这样我的新文件就可以代替原来的文件了?如果是,我该怎么做?

或者,我如何混合字符串的新定义,即

替换:

missingMessage: "This value is required.",

带有:

missingMessage: "My string is here.",

如果您想按照自己的要求执行操作,并为dijit/form/nls/validate i18n模块选择一个备用文件,则可以使用map属性重新映射模块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 });
    // ...
});