javascript - 替换 Dojo/Dijit NLS 字符串

标签 javascript localization dojo dijit.form

我希望用新文件覆盖 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/

相关文章:

javascript - Angular jquery 插件 - 插件中未定义 jQuery

javascript - SyntaxError : expected expression, 使用 dojo 工具包 1.6 得到 '<'

google-maps - 从 google map api v3 获取英文地址

javascript - 使用 dstore Rest 禁用查询参数中的过滤器

dojo - 我应该为自定义 CMS 使用什么富文本编辑器

javascript - ElectronJS Vue Axios基本身份验证访问控制-允许-起源错误

javascript - 单元错误 : assertion outside test context

javascript - javascript 中 && 的运算符优先级/执行顺序是什么

c# - String.Format 为阿拉伯文本抛出 'Input string was not in a correct format'

ios - 强制 genstrings 按出现顺序而不是字母顺序构建 Localizable.strings 文件