【国际化】vue2+uniapp实现国际化

news2024/11/14 6:29:07

文章目录

  • 前言
  • 一、什么是国际化?
  • 二、使用步骤
    • 1.创建locale文件夹
    • 2.创建国际化JSON文件
    • 3.引入国际化
  • 总结


前言

国际化其实是拓展你的应用的受众人群的一种方式,有利于你的项目应用范围更广,uniapp和vue官方文档都有针对于国际化有专门的文档,这里我只是讲关于vue2结合uniapp框架使用国际化的具体应用,使其更符合项目开发结构。

uniapp国际化官方文档

VUE国际化插件文档


提示:以下是本篇文章正文内容,下面案例可供参考

一、什么是国际化?

uni-app的国际化,即多语言,分为应用部分和框架部分。

应用部分,即开发者自己的代码里涉及的界面部分

框架部分,即uni-app内置组件和API涉及界面的部分

不同端的国际化方案也有差异,uni-app 自 3.1.5起,App 和 H5 支持框架国际化。小程序平台的国际化依赖于小程序平台框架自身。一般而言海外用户更多使用的是App和H5。

大白话:如果你的应用想要上架海外市场,必须要有国际化,其实就是多加几个语言包,不过要注意用词准确并且符合样式需求,如果翻译过长可能导致样式出现变化,要注意兼容问题

二、使用步骤

1.创建locale文件夹

为了让你的项目结构更加清晰,可能网上会直接将js文件放入项目根目录,但是这种方式不利于后期维护,所以这里采用更加规范的方式!

在项目的根目录下创建locale文件夹,同时创建index.js文件,用来集中管理国际化文件
在这里插入图片描述

代码如下 (index.js):

import VueI18n from 'vue-i18n'

import en from './en.json'
import zhHans from './zh-Hans.json'



const messages = {
  en,
  'zh-Hans': zhHans,
}

let i18nConfig = {
  locale: uni.getLocale(), // 获取已设置的语言
  messages
}



export default i18nConfig

2.创建国际化JSON文件

这里最好针对不同的模块进行分类

代码如下 (zh-Hans.json):

{
  "route.index": "市场",
  "route.init": "初始化页面",

  "tabbar.sms": "验证码",
  "tabbar.market": "市场",

  "common.all": "全部",


  "title.aboutUs": "关于我们",

}


3.引入国际化

在main.js中引入国际化文件

代码如下 ):

import i18nConfig from '@/locale/index.js' //国际化

//国际化配置
import VueI18n from 'vue-i18n' // v8.x
Vue.use(VueI18n)
const i18n = new VueI18n(i18nConfig)


const app = new Vue({
  i18n,//引入国际化
  ...App
})
app.$mount()


总结

以上就是今天要讲的内容,本文仅仅简单介绍了国际化的使用,如有错误,请留言提出

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

WIFI电子标签参数

一、4.2寸WIFI电子标签参数 型号 PW42R_V1 尺寸(mm) 104.95*95.93*15.2mm 显示技术 3色墨水屏显示技术 可视区域(mm) 84.6*63.4 分辨率(像素) 400*300 像素尺寸(mm) 0.212*0.212 单点颜色 黑/白/红 视角 180 工作温度 0 - 40℃ 重量 150g 电池 CR2477*6 …

Nginx同一端口部署多个前后端分离的vue项目

要用nginx容器部署多个前端项目可以采用监听端口,和基于location配置两种方法, 我的nginx是使用docker部署的,启动的时候没有开多余的端口,所以采用location配置 一个server下根据根路径不同分别代理访问不同项目。 下面操练起来&…

什么是响应式编程

简称RP(Reactive Programming) 定义一 响应式编程是一种面向数据流和变化传播的编程范式。这意味着可以在编程语言中很方便地表达静态或动态的数据流,而相关的计算模型会自动将变化的值通过数据流进行传播。 变化传播:主动/自动将…

2023/03/09 - Vue学习笔记 - 【组件通信】 vuex的使用和讲解—$store

官网:https://vuex.vuejs.org/zh/ 1 Vuex存在的意义 概念:专门在 Vue 中实现集中式状态(数据)管理的一个 Vue 插件,对 vue 应用中多个组件的共享状态进行集中式的管理(读/写),也是…

Kafka入门(七)

下面聊聊Kafka的配置参数,包括生产者的配置参数、Broker的配置参数、消费者的配置参数。 1、生产者配置参数 acks 该参数控制了生产者的消息发送确认机制,用于指定分区中必须有多少个副本成功接收到消息后生产者才会认为这条消息写入是成功的&#xff0c…

问题解决:利用GeoFabrik下载OSM数据

问题描述由于OpenStreetMap数据常常是.osmnx格式,需要在Linix系统上进行格式转换,比较不方便。GeoFabrik 下载平台提供了一个很好的直接下载.shp数据格式的途径,链接如下:【无需梯子】Geofabrik Download Server具体下载方法以Nep…

QT-项目创建

项目创建 注意: 项目创建&#xff0c;名称和路径不能包含中文路径。 创建窗口三大基类 QWidhetQMainWindowQDialog 1.1 项目文件介绍 mian.cpp 介绍 #include "mywidget.h" #include <QApplication> // QApplication 应用程序类// 程序入口 命令行变量数量 …

Zabbix6.2利用模板和自定义监控项监控华为AR3260路由器

1&#xff1a;登录路由器的WEB管理控制台。在系统管理中找到SNMP然后开启SNMP代理&#xff0c;SNMP的版本可以只选择v2c都选择也无所谓&#xff0c;然后点击新建一个团体。 2&#xff1a;团体名称输入默认的public即可&#xff0c;在WEB端显示的是乱码&#xff0c;但是不影响使…

SQL执行过程详解

1 、用户在客户端执行 SQL 语句时&#xff0c;客户端把这条 SQL 语句发送给服务端&#xff0c;服务端的进程&#xff0c;会处理这条客户端的SQL语句。 2 、服务端进程收集到SQL信息后&#xff0c;会在进程全局区PGA 中分配所需内存&#xff0c;存储相关的登录信息等。 3 、客…

国外SEO策略指南:确保你的网站排名第一!

如果你想在谷歌等搜索引擎中获得更高的排名并吸引更多的流量和潜在客户&#xff0c;那么你需要了解一些国外SEO策略。 下面是一些可以帮助你提高谷歌排名的关键策略。 网站结构和内容优化 谷歌的搜索算法会考虑网站的结构和内容。 因此&#xff0c;你需要优化网站结构&…

2379. 得到 K 个黑块的最少涂色次数

2379. 得到 K 个黑块的最少涂色次数 难度简单 给你一个长度为 n 下标从 0 开始的字符串 blocks &#xff0c;blocks[i] 要么是 W 要么是 B &#xff0c;表示第 i 块的颜色。字符 W 和 B 分别表示白色和黑色。 给你一个整数 k &#xff0c;表示想要 连续 黑色块的数目。 每一…

Python数据结构与算法篇(二)-- 数组常见题型与解题技巧

数组和链表代表着计算机最基本的两种存储形式&#xff1a;顺序存储和链式存储&#xff0c;所以他俩可以算是最基本的数据结构。数组是一种基础数据结构&#xff0c;可以用来处理常见的排序和二分搜索问题&#xff0c;典型的处理技巧包括对双指针、滑动窗口等&#xff0c;数组是…

想要将多个视频拼接在一起?如何把三个视频合成一个视频

从事短视频创作行业以来&#xff0c;总是存在着各种挑战。最开始&#xff0c;因为主要负责视频素材的搜集&#xff0c;所以每天虽忙但充实&#xff0c;最近逐步开始学习视频的剪辑工作&#xff0c;可把我难到了&#xff01;想要将多个视频拼接在一起&#xff1f;如何把三个视频…

「 Java 8 新特性 」Stream 中的 map、peek、foreach 方法的区别

「 Java 8 新特性 」Stream 中的 map、peek、foreach 方法的区别 文章参考&#xff1a; 面试官问&#xff1a;Stream 中的 map、peek、foreach 方法的区别&#xff1f;傻傻分不清楚。。 stream中的map,peek,foreach的区别 一、概述 在学习java 8的stream api时&#xff0c;我们…

Java【数据结构入门OJ题33道】——力扣刷题记录1

文章目录第一天存在重复元素最大子数组和第二天两数之和合并两个有序数组第三天两个数组的交集买卖股票最佳时机第四天重塑矩阵杨辉三角第五天有效的数独矩阵置零第六天字符串中第一个唯一字符救赎金第七天判断链表是否有环合并两个有序链表移除链表元素第八天反转链表删除重复…

c++面试技巧-高级应用篇

1.面试官&#xff1a;什么是文件流&#xff1f; 应聘者&#xff1a;写入文件或者从文件读出的数据流称之为文件流。 2.面试官&#xff1a;文件流的类时如何划分的&#xff1f; 应聘者&#xff1a;当C对文件进行处理时&#xff0c;需要包括头文件iostream和fstream。fstream头…

游戏逆向之游戏技能分析

角色的当前技能列表往往都是从系统的技能库中进行筛选而组成的&#xff0c;而这个筛选的过程大多非常的复杂&#xff0c;经过的代码和临时结构体的传递也非常的多&#xff0c;所以在分析技能对象来源的时候常常要将OD和CE配合来使用。下面我们来分析下《天堂2》的技能列表。 首…

拼多多存在多种重大风险

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 中国电子商务市场发展迅速 拼多多&#xff08;PDD&#xff09;目前已经成为了在中国发展最快的电子商务平台之一。随着拼多多、阿里巴巴(BABA)和京东(JD)等市场主要参与者的竞争&#xff0c;中国电子商务正在迅速发展。 由…

安装SceneBuilder时出现Verify that you have access to that directory报错,解决方法之一

1、问题描述 安装SceneBuilder时出现Error writing to file...Verify that you have access to that directory报错&#xff0c;如图 2、解决步骤 1&#xff09;SceneBuilder-19.0.0.msi可从参考教程链接1获取&#xff0c;下载到文件夹D:\LcSceneBuilder\SceneBuilder-19.0.0…

Spring Cloud融合gateway自带GatewayFilter使用 | Spring Cloud 15

一、Spring Cloud Gateway内置GatewayFilter 路由过滤器允许以某种方式修改传入的 HTTP 请求或传出的 HTTP 响应。路由过滤器的范围是特定路由。Spring Cloud Gateway 包括许多内置的 GatewayFilter 工厂。 官网地址&#xff1a;https://docs.spring.io/spring-cloud-gateway…