1

我希望用一个新文件覆盖 NLS 文件 (dijit/form/validate.js) 文件,或者替换一些 NLS 字符串映射。我希望这个文件被标准 Dijits 拾取。

我不想删除标准 Dojo 库中的文件。我可以在 djConfig 中指定一个路径来搜索 NLS 文件的目录,以便获取我的新文件而不是原始文件吗?如果是这样,我该怎么做?

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

代替:

missingMessage: "This value is required.",

和:

missingMessage: "My string is here.",
4

1 回答 1

1

如果您想按照您的要求执行并为dijit/form/nls/validatei18n 模块选择一个备用文件,您可以使用该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 });
    // ...
});
于 2013-06-29T17:35:41.530 回答