您的位置:首页 > 科技 > IT业 > 云南网络营销文化优化_完成网络广告营销策划和推广_优化工具箱下载_百度广告推广费用

云南网络营销文化优化_完成网络广告营销策划和推广_优化工具箱下载_百度广告推广费用

2024/12/23 8:18:42 来源:https://blog.csdn.net/Dark_programmer/article/details/142524404  浏览:    关键词:云南网络营销文化优化_完成网络广告营销策划和推广_优化工具箱下载_百度广告推广费用
云南网络营销文化优化_完成网络广告营销策划和推广_优化工具箱下载_百度广告推广费用

uni-app - - - - -使用i18n配置国际化语言

  • 1. 安装vue-i18n
  • 2. 配置文件
    • 2.1 创建如下文件
    • 2.2 文件配置
    • 2.3 main文件导入i18n
  • 3. 页面内使用
    • 3.1 template内直接使用
    • 3.2 变量接收使用

1. 安装vue-i18n

npm install vue-i18n --save

2. 配置文件

2.1 创建如下文件

在这里插入图片描述

  • locales文件夹里的js文件,对应各个语言的配置

2.2 文件配置

en-US.js

// 英文配置文件
export default {str: 'string',obj: {key1: 'value1',key2: 'value2'},arr: ['arr1', 'arr2']
}

zh-CN.js

// 中文配置文件
export default {str: '字符串',obj: {key1: '字段1',key2: '字段2'},arr: ['元素1', '元素2']
}

index.js

import {createI18n
} from "vue-i18n";
import zhCN from "./locales/zh-CN";
import enUS from "./locales/en-US";const systemInfo = uni.getSystemInfoSync();
console.log(systemInfo);//uni.showModal({
//	title: '宿主语言',
//	content: systemInfo.hostLanguage
//})let _lan = systemInfo.hostLanguage || 'zh-CN'; //  获取本地存储 || 根据浏览器语言设置console.log('当前语言为:', _lan);const i18n = createI18n({fallbackLocale: 'zh-CN',legacy: false, // 使用Composition API,这里必须设置为falselocale: _lan, // 默认使用语言globalInjection: true, // 全局注册$t方法messages: {"zh-CN": zhCN,en: enUS,},
});export default i18n;

2.3 main文件导入i18n

import i18n from "./language";...app.use(i18n)

3. 页面内使用

3.1 template内直接使用

注意:对象、数据 使用$tm

<view>字符串:  {{ $t('str') }} </view>
<view>字符串:  {{ $tm('obj.key1') }} </view>
<view>字符串:  {{ $tm('arr')[0] }} </view>

3.2 变量接收使用

<view>字符串:  {{ pageStr }} </view>
<view>字符串:  {{ pageObj }} </view>
<view>字符串:  {{ pageArr }} </view>
import i18n from "/language";const pageStr = ref(computed(() => i18n.global.t("str")))
const pageObj = ref(computed(() => i18n.global.tm("obj")))
const pageArr = ref(computed(() => i18n.global.tm("arr")))return {pageStr,pageObj,pageArr
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com