返回介绍

i18n-loader

发布于 2019-05-27 04:54:25 字数 2917 浏览 948 评论 0 收藏 0

用法

./colors.json

{
    "red": "red",
    "green": "green",
    "blue": "blue"
}

./de-de.colors.json

{
    "red": "rot",
    "green": "gr�n"
}

调用

// 假如我们的所在区域是 "de-de-berlin"
var locale = require("i18n!./colors.json");

// 等待准备就绪,在一个 web 项目中所有地区只需要一次
// 因为所有地区的语言被合并到一个块中
locale(function() {
    console.log(locale.red); // 输出 rot
    console.log(locale.blue); // 输出 blue
});

配置

如果想要一次加载然后可以同步地使用, 你应该告诉 loader 所有要使用的地区。

{
  "i18n": {
    "locales": [
      "de",
      "de-de",
      "fr"
    ],
    // "bundleTogether": false
    // 可以禁止所有地区打包到一起
  }
}

可选的调用方法

require("i18n/choose!./file.js"); // 根据地区选择正确的文件,
                    // 但是不会合并到对象中
require("i18n/concat!./file.js"); // 拼接所有合适的地区
require("i18n/merge!./file.js"); // 合并到对象中
                    // ./file.js 在编译时会被排除掉
require("i18n!./file.json") == require("i18n/merge!json!./file.json")

如果需要在 node 中使用,不要忘记填补(polyfill)require。 可以参考 webpack 文档。

License

MIT (http://www.opensource.org/licenses/mit-license.php)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文