DCloud_heavensoft
DCloud_heavensoft
  • 发布:2019-04-24 03:25
  • 更新:2023-12-28 14:37
  • 阅读:58479

uni-app国际化/多语言指南

分类:uni-app
2 关注 分享
4***@qq.com 2***@qq.com

要回复文章请先登录注册

anyupUI

anyupUI

时间、日期选择器Picker如何国际化???
2020-09-15 16:20
8***@qq.com

8***@qq.com

Uncaught TypeError: Cannot set property $i18n of #<Vue> which has only a getter
2020-08-22 11:11
786395613

786395613

国际化打包apk后中文环境走的是英文是什么原因?电脑端小程序是ok的
2020-08-18 15:13
786395613

786395613

回复 存在的主义 :
同样的问题遇到了,后来你是怎么解决这个问题的?
2020-08-18 15:10
英盟

英盟

相册选择不会原生开发就没解决办法了?
2020-08-18 14:39
1***@qq.com

1***@qq.com

内置组件怎样国际化?
2020-08-09 13:11
风扬

风扬

退出APP时的 “再按一次退出应用” 国际化方案如下:
在onLaunch里面对plus.nativeUI.toast方法进行重写,例如

```
// #ifdef APP-PLUS
_self = this;
var tmpToast = plus.nativeUI.toast;
plus.nativeUI.toast = function(message, options) {
if (message == '再按一次退出应用') {
message = _self.$t('common.exit')
}
tmpToast(message, options);
return true;
};
// #endif
```
2020-07-28 14:19
8***@qq.com

8***@qq.com

回复 1***@163.com :
谢谢
2020-07-14 13:54
1***@163.com

1***@163.com

回复 8***@qq.com :
main.js里面生命一个全局变量接受i18n和语言包,如代码:
let i18n = new VueI18n({
locale: uni.getStorageSync('lang') ? JSON.parse(uni.getStorageSync('lang')).value : 'lang_en',
messages
})
Vue.prototype.$i18nObj = i18n
Vue.prototype.$lang = i18n.messages[i18n.locale]

然后页面上读取的时候,如代码:view.item-left {{ $lang.startTime }}

另外,做语言切换的时候要在组件生成之前重新获取语言包,如以下代码:
beforeCreate() {
this.$lang = this.$i18nObj.messages[JSON.parse(uni.getStorageSync('lang')).value]
},
2020-07-14 13:43
1***@163.com

1***@163.com

回复 蒋雨洋 :
main.js里面生命一个全局变量接受i18n和语言包,如代码:
let i18n = new VueI18n({
locale: uni.getStorageSync('lang') ? JSON.parse(uni.getStorageSync('lang')).value : 'lang_en',
messages
})
Vue.prototype.$i18nObj = i18n
Vue.prototype.$lang = i18n.messages[i18n.locale]

然后页面上读取的时候,如代码:view.item-left {{ $lang.startTime }}

另外,做语言切换的时候要在组件生成之前重新获取语言包,如以下代码:
beforeCreate() {
this.$lang = this.$i18nObj.messages[JSON.parse(uni.getStorageSync('lang')).value]
},
2020-07-14 13:43