uni-app 设置多语言切换uni-i18n插件

news/2025/3/9 22:44:41/文章来源:https://www.cnblogs.com/MaoZhuaShi/p/18636357

安装uni-i18n插件

npm install uni-i18n

main.js文件中引入并初始化VueI18n

///main.js
import messages from './language/index'
let i18nConfig = {locale: uni.getLocale(),messages
}import Vue from 'vue'
import VueI18n from 'vue-i18n'
import App from './App'
Vue.use(VueI18n)
const i18n = new VueI18n(i18nConfig)
Vue.config.productionTip = false
App.mpType = 'app'
const app = new Vue({i18n, ...App
})
// 国际化

app.$mount()

建立相关的语言文件夹,存放.js语言文件

 

定义index.js在设置全局变量

///index.js
import en from './enHans.json'
import zhHans from './zh-Hans.json' 
export default {'zh-Hans': zhHans,en,
}

在页面中应用

页面模板中使用 t() 获取,并传递国际化json文件中定义的key,js中使用 this.t('')

<template><view class="container"><view class="title">{{$t('index.title')}}</view></view>
</template
computed: {locales() {return [{text: this.$t('language.zh'),tip:this.$t('language.zh_tip'),code: 'zh-Hans',}, {text: this.$t('language.en'),tip:this.$t('language.en_tip'),code: 'en'}]}},onLoad() {let systemInfo = uni.getSystemInfoSync();this.systemLocale = systemInfo.language;this.applicationLocale = uni.getLocale();uni.onLocaleChange((e) => {this.applicationLocale = e.locale;})},
注:语言API
uni-app内置了一批与国际化相关的API和生命周期。注意要区分系统语言和应用语言的概念。uni.getSystemInfo
可以得到设备OS的语言、运行宿主host的语言以及应用自身的语言。uni.getLocale
获取应用当前使用的语言uni.setLocale
设置应用语言uni.onLocaleChange
当前应用语言发生变化时,触发回调。也就是uni.setLocale执行时。

Vue页面 i18n代码提示

 

 

pages.json i18n代码提示

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/859944.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

查询数据库开始时间和结束时间字段中包括了给定时间区间的数据

表数据示例: 查询区间:2024-12-03 10:00:00 - 2024-12-06 18:00:00 mysql示例:SELECT * FROM time_test WHERE ((start_time > 2024-12-03 10:00:00 AND (2024-12-06 18:00:00 > end_time OR ( 2024-12-06 18:00:00 > start_time AND 2024-12-06 18:00:00 < e…

ASP.NET 自定义控件

创建Web Forms 用户控件 选中项目右键#新建 #Web Forms #Web Forms 用户控件代码示例<div id="footer"><div style="font-family: @宋体; font-size: 11px;"><strong >Martin Emprex Textiles(Zhongshan-China)Limited</strong>&l…

协同办公如何帮助车企抓住以旧换新市场机会

随着国家对以旧换新购车政策的进一步细化和推广,汽车市场的竞争再度升级。对于车企而言,这既是一个重要的市场增长契机,也是一次全方位提升销售运营效率的考验。通过在线协同工具,车企能够更高效地推动内部协作、优化外部销售网络,在换新浪潮中构建敏捷的销售体系。 敏捷销…

智能感知的未来:传感器融合与数字样机技术

2024年是汽车产业蓬勃发展的一年。汽车保有量的迅速攀升固然可喜可贺,然而伴随而来的交通事故频发、道路拥堵、停车困难、环境污染、能源消耗等现实问题日益凸显,严重阻碍了汽车工业的持续健康发展。 据世界卫生组织最新统计,全世界范围内每年由道路交通事故引发的人员死亡人…

SVG前端画图

SVG(Scalable Vector Graphics)是一种基于XML的标记语言,用于描述二维矢量图形,它可以在Web浏览器中进行展示。 SVG优点是:可伸缩、分辨率无损失,不管是电脑还是手机屏幕上都能够清晰地显示,支持互动和动画等特效; 缺点是:不支持复杂的渲染效果,如模糊、阴影和透明度…

uniapp项目打包为桌面应用的方法步骤

1、在控制台安装electron cnpm install electron -g 2、在控制台安装electron-packager cnpm install electron-packager -g 3、uniapp的manifest.json修改image.png运行的基础路径修改为:./ 不然打包出来会出现白屏,读取不到,因为打包出来的h5默认加载地址为/static/ 去掉启…

dropDownButton使用方法

添加DropDownButton 控件添加PopuMenu控件DropDownButton控件绑定PopuMenu控件

智能问答模型升级,通义灵码新增图片多模态问答模式等新能力,项目秒上手

通义灵码智能问答模型升级 Qwen2.5 Coder、输入交互升级并丰富上下文支持,全新支持多模态图片问答模式等。通义灵码智能问答模型升级 Qwen2.5 Coder、输入交互升级并丰富上下文支持,全新支持多模态图片问答模式等。 1. 智能问答模型升级到最新 Qwen2.5 Coder 智能问答升级到最…

Oracle数据库关于日期TO_DATE的用法

1、在Oracle数据库中,常用的日期格式,比如获取当前时间 SELECT SYSDATE AS 当前时间 FROM DUAL; 2、稽核本月第一天的数据至今,日期获取如下 SELECT TRUNC(SYSDATE, MM) AS 当月第一天 FROM DUAL; 3、日期时间格式 select to_date(2021/7/1 23:59:59,yyyy/mm/dd hh24:mi:ss…

window环境下 IIS负载均衡

目录负载均衡分类DNS轮询 CDN IP负载均衡网络七层协议ARR(Application Request Route)配置IIS集群 负载均衡配置 负载监控 Nginx获取真实客户端IP地址ARR 负载均衡 任何的负载均衡技术都要想办法建立某种一对多的映射机制: 一个请求的入口映射到多个处理请求的节点,从而实现…

小学1-6年级必备:精讲字卡和写字表合集,帮孩子练出一手好字

正文: 小学阶段是孩子语文学习的重要时期,特别是汉字书写的培养尤为关键。为了帮助孩子掌握规范的汉字笔画、拼音、组词以及书写结构,这里特别推荐一套小学1-6年级同步精讲字卡与写字表合集。 这套内容覆盖了小学阶段所有的重点字词,家长和老师可以轻松打印,作为学习和练字…