javascript - 你如何在 i18next 中使用多个命名空间?

标签 javascript namespaces i18next

我刚刚开始 i18next,我想为我项目中的每个模块创建翻译文件。似乎使用 namespace 是执行此操作的正确方法。该项目可以使用多个 View 创建页面布局,因此我需要能够同时翻译来自多个命名空间的字符串。

我已经创建了一个具有两个命名空间的简单示例,但我只能让 i18next 为一个命名空间翻译字符串。如果我使用 defaultNs: namespaces[0] 那么数字会被翻译,使用 defaultNs: namespaces[1] 颜色会被翻译,使用 defaultNs: namespaces 没有被翻译。但我不知道如何让两个 namespace 都进行翻译。

<!doctype html>
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8">
        <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
        <script src="i18next.js"></script>
        <script>
        $(document).ready(function(){
            var language = "en";
            var namespaces = [ "numbers", "colors" ];
            var config = {
                lng: language,
                fallbackLng: "en",
                resGetPath: "namespaces/__ns__/__ns__-__lng__.json",
                ns: {
                    namespaces: namespaces,
                    defaultNs: namespaces[0]
                },
                debug: true
            };
            i18n.init( config, function onInitComplete() {
                $(".xl8").i18n();
            });

        });
        </script>
    </head>
    <body>
        <h1>hello, i18n!</h1>
        <ol>
            <li class="xl8" data-i18n="numbers.one">1</li>
            <li class="xl8" data-i18n="numbers.two">2</li>
            <li class="xl8" data-i18n="numbers.three">3</li>
        </ol>
        <ul>
            <li class="xl8" data-i18n="colors.red">r</li>
            <li class="xl8" data-i18n="colors.green">g</li>
            <li class="xl8" data-i18n="colors.blue">b</li>
        </ul>
    </body>
</html>

最佳答案

我在 github 上发布了同样的问题,并从 jamuhl 收到了以下有效答案:

if a resource is not on the default namespace use:

    <li class="xl8" data-i18n="colors:colors.blue">b</li> --> namespace:key

关于javascript - 你如何在 i18next 中使用多个命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27003736/

相关文章:

reactjs - 如何在使用 react-testing-library 和 jest 完成的单元测试中启用 react-i18n 翻译文件?

next.js - React i18next 单数和复数问题,始终返回复数值

xml - 使用 XLS 删除一些命名空间前缀

javascript - 使 jQuery 脚本按预期工作时出现问题

javascript - Flask-SocketIO 与 RabbitMQ 一起使用时未从前端接收消息

javascript - 在 Javascript 中生成 PGP key 对,并使用加密的 PGP 私钥签署文本

kubernetes - 有没有办法在命名空间之间共享 kubernetes 中的 configMap?

c++ - 模板类的模板 friend 的问题

i18next 使用 Intl Api 格式化日期、数字

javascript - 创建具有可移动行的动态表