微信小程序多语言实现:动态内容翻译如何解决?

微信小程序多语言实现:动态内容翻译如何解决?

微信小程序多语言实现在哪安排?

各位,祝大家新年快乐!

小程序多语言的需求不少见,今天就来聊聊实现方法。先说说传统手法:

手动配置 json 语言包

简单来说,就是写一大堆 json 文件,每种语言一种。这种方法虽然基础,但繁琐且需人工维护。

现成的多语言 json 包?

抱歉,没有这种东西。你的商品数据是动态的,无法提前准备好所有语言的翻译。

不过,你可以考虑以下方案:

一、本地静态内容 i18n

对于确认框等固定内容,你可以自己手动配置不同的语言包:

英语

{
  "confirm": "confirm",
  "cancel": "cancel",
}

中文

{
  "confirm": "确认",
  "cancel": "取消",
}

二、根据语言获取商品信息

动态内容需要后端配合。具体来说,前端在请求商品信息时,需要将当前语言告诉后端:

请求头携带语言信息

wx.request({
  // 设置请求头,携带语言信息
  header: {
    'accept-language': 'zh-cn',
  },
});

后端根据语言返回商品信息

后端根据前端提供的语言,返回对应语言的商品信息。前端直接渲染即可:

渲染 wxml

<view>{{goodsDetail.title}}</view><view>{{goodsDetail.desc}}</view>

以上就是微信小程序多语言实现:动态内容翻译如何解决?的详细内容,更多请关注其它相关文章!