首页 > 解决方案 > 使用 Parcel bundler 生成 i18n 静态 HTML

问题描述

我正在使用 Parceljs 来捆绑 html 和 js。它在配置较少的情况下工作得非常好。

现在,我面临 i18n 问题。Google 建议为页面的每种语言版本使用不同的 URL。 https://support.google.com/webmasters/answer/182192

所以,我想从下面的一个模板生成特定于语言的静态 html。

.
├── dist
│   ├── ja
│   │   └── index.html
│   ├── app.c328ef1a.js
│   └── index.html
├── i18n
│   ├── default.json
│   └── ja.json
└── source
    ├── app.js
    └── index.html

来源/index.html

<html>

<body>
  <h1>__TITLE__</h1>
  <script src="/app.js"></script>
</body>

</html>

i18n/default.json

{
  "__TITLE__": "Hello world!"
}

i18n/ja.json

{
  "__TITLE__": "こんにちは 世界!"
}

有没有办法使用 parceljs 处理这个问题?或者,我应该为预构建编写代码吗?

谢谢你。

标签: javascripthtmlnode.jsinternationalizationparceljs

解决方案


自我回答:

我在这里找到了一个很好的答案。它提到了生成 i18n 静态 HTML的 node-static-i18n包。这个工具不是parceljs的插件,但似乎能产生预期的结果。

欢迎另一个答案。


推荐阅读