前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >uniapp 国际化开发指南【多语言】

uniapp 国际化开发指南【多语言】

作者头像
很酷的站长
发布2022-12-04 14:59:09
发布2022-12-04 14:59:09
3.2K00
代码可运行
举报
运行总次数:0
代码可运行
  • 1. uniapp 的国际化
  • 2. VueI18n 多语言使用
1. uniapp 的国际化

zh-Hans 简体中文 zh-Hant 繁体中文

国际化 (Internationalization,简称 i18n):指软件开发具备支持多种语言的地区功能

i18n 简称的来源是单词 Internationalization 的首末字符 i 和 n,18 为中间的字符数量

uniapp 的国际化开发指南文档 : https://uniapp.dcloud.net.cn/tutorial/i18n.html

2. VueI18n 多语言使用

一、创建国际化 json 文件

代码语言:javascript
代码运行次数:0
运行
复制
├── locale│   ├── index.js│   ├── en.json│   ├── zh-Hans.json│   └── zh-Hant.json

语言文件示例 (zh-Hans.json) :

代码语言:javascript
代码运行次数:0
运行
复制
{    "app.name": "天乐商城",    "index.title": "首页",}

合并导出国际化 json 文件 (index.js) :

代码语言:javascript
代码运行次数:0
运行
复制
import en from './en.json';import zhHans from './zh-Hans.json';export default { 'zh-Hans': zhHans, en }

二、main.js 引入并初始化 VueI18n

代码语言:javascript
代码运行次数:0
运行
复制
// 导入国际化 json 文件import messages from '@/locale/index'const i18nConfig = { locale: uni.getLocale(), messages }// Vue 安装 VueI18nimport VueI18n from 'vue-i18n'Vue.use(VueI18n)const i18n = new VueI18n(i18nConfig)// 挂载到 Vue 实例const app = new Vue({    ...App,    i18n})

三、使用多语言

页面模板中使用 $t 获取,并传递国际化 json 文件中定义的 key

代码语言:javascript
代码运行次数:0
运行
复制
<view>{{ $t('index.title') }}</view>

js 中使用 this.$t(),注意: this 指向的是 vue 实例

代码语言:javascript
代码运行次数:0
运行
复制
this.$t('index.title')

pages.json 中使用

代码语言:javascript
代码运行次数:0
运行
复制
{    "pages": [{        "path": "pages/index/index",        "style": {            // 使用 %% 占位            "navigationBarTitleText": "%index.title%"        }    }],    "tabBar": {        "list": [{            "pagePath": "pages/index/index",            // 使用 %% 占位            "text": "%index.home%"        }]    }}

四、切换语言

uni.setLocale() 在 App 中会重启应用

代码语言:javascript
代码运行次数:0
运行
复制
uni.setLocale('en')this.$i18n.locale = 'en'
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. uniapp 的国际化
  • 2. VueI18n 多语言使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档