前言

  vue+vue-i18n实现多语言

本文主要内容

  1. 安装
  2. 多语言配置
  3. element 内置语言国际化
  4. 踩到的坑以及解决方案

安装

npm install vue-i18n

配置

1.i18n.js

import Vue from 'vue';
  import locale from 'element-ui/lib/locale';
import VueI18n from 'vue-i18n';

import en from './langs/en';
import sc from './langs/cn';
import tc from './langs/tc'; Vue.use(VueI18n);
const i18n = new VueI18n({
//locale: localStorage.lang || 'en',
locale: localStorage.getItem('localize_lang') || 'en',
messages: {
sc, //中文
en, //英文
tc //繁体
}
}); locale.i18n((key, value) => i18n.t(key, value)); //重点:为了实现element插件的多语言切换 export default i18n;

2.main.js (引用i18n)

import Vue from 'vue';
import i18n from './i18n/i18n'; new Vue({
el: '#app',
i18n
});

3.langs 建立新文件夹 主要用来存放语言文件

你有多少种语言就添加多少

  

// en.js
const en ={
name:'fannie'
}
export default en
// cn.js
  import zhLocale from 'element-ui/lib/locale/lang/zh-CN';
const cn ={
name:'法妮' ,
  ...zhLocale
}
export default cn

4.demo.vue (组件内应用)

<template>
<div>{{$t('name')}}</div>
<el-select v-model="langType" class="changeLangType" size="mini" @change="changeLangType">
<el-option value="en" label="English"></el-option>
<el-option value="cn" label="中文简体"></el-option>
<el-option value="tc" label="中文繁體"></el-option>
</el-select>
</template>
<script>
export default {
data(){
return {
  langType:'',
 }; },
methods:{
changeLangType(type){
localStorage.setItem('locale',type);
this.$i18n.locale = type;
}
}
};
</script>

elementUI 内置国际化

打开element官网,里面有国际化的文档。可以查看现在官网支持多少种语言

import zhLocale from 'element-ui/lib/locale/lang/zh-CN';
...zhLocale
写在cn.js 中

踩到的坑以及解决方案

1.Value of key 'xxx' is not string!
Cannot translate the value of keypath 'xxx'. Use the value of keypath as default.

 解决方案:

  1. 可能是你字符没有声明,找不到。
  2. 引用配置这些地方有问题 仔细对照一下,比如引用路径 比如在mian.js 中是否导入了
  3. 一定要写messages哦

fannie总结

  按照步骤来,注意细节

[vue系列]-vue+vue-i18n+elementUI 国际化的更多相关文章

  1. Vue系列之 => vue组件创建

    创建方式 一 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...

  2. Vue系列:Vue Router 路由梳理

    Vue Router 是 Vue.js 官方的路由管理器.它和 Vue.js 的核心深度集成,让构建单页面应用变得易如反掌.包含的功能有: 嵌套的路由/视图表 模块化的.基于组件的路由配置 路由参数. ...

  3. Vue系列---理解Vue.nextTick使用及源码分析(五)

    _ 阅读目录 一. 什么是Vue.nextTick()? 二. Vue.nextTick()方法的应用场景有哪些? 2.1 更改数据后,进行节点DOM操作. 2.2 在created生命周期中进行DO ...

  4. vue系列---理解Vue中的computed,watch,methods的区别及源码实现(六)

    _ 阅读目录 一. 理解Vue中的computed用法 二:computed 和 methods的区别? 三:Vue中的watch的用法 四:computed的基本原理及源码实现 回到顶部 一. 理解 ...

  5. [js高手之路] vue系列教程 - vue的基本用法与常见指令(1)

    本系列课程选用vue的版本为1.0.21, 什么是vue? vue是由尤雨溪开发的一款基于MVVM的框架,M->模型,V->视图, 也就是说模型数据改变了,视图也跟着改变, 视图内容改变, ...

  6. [js高手之路] vue系列教程 - vue的事件绑定与方法(2)

    一.在vue中,绑定事件,用v-on:事件类型, 如绑定一个点击事件, 我们可以这样子做 window.onload = function () { var c = new Vue({ el : 'b ...

  7. Vue系列——在vue项目中使用echarts

    该示例使用 vue-cli 脚手架搭建 安装echarts依赖 npm install echarts -S 或者使用国内的淘宝镜像安装 npm install -g cnpm --registry= ...

  8. vue系列之vue cli 3引入ts

    插件 Vue2.5+ Typescript 引入全面指南 vue-class-component强化 Vue 组件,使用 TypeScript/装饰器 增强 Vue 组件 vue-property-d ...

  9. Vue 系列(一): Vue + Echarts 开发可复用的柱形图组件

    目录 前置条件 安装echarts 引入echarts 柱形图组件开发 在何时初始化组件? 完整的代码 记得注册组件!!! 本文归柯三(kesan)所有,转载请注明出处 https://www.cnb ...

  10. [js高手之路] vue系列教程 - 事件专题(4)

    本文主要讲解事件冒泡,事件绑定的简写,事件默认行为,按键码等一系列与事件相关的知识. 一.事件绑定的简写,@事件类型.  之前我的[js高手之路] vue系列教程 - vue的事件绑定与方法(2) 用 ...

随机推荐

  1. .NET 单文件执行程序拆解器 SingleFileExtractor

    .NET 单文件执行程序拆解器 SingleFileExtractor .NET 现在支持将程序打包为单文件格式,这方便了部署,问题是,我们不能直接看到程序中使用了哪些 DLL,更不能简单地通过查看文 ...

  2. Excel 真的很强大之 Excel DDE 攻击

    https://pentestlab.blog/2018/01/16/microsoft-office-dde-attacks/ =cmd|'/c calc.exe'!A1 =MSEXCEL|'\.. ...

  3. 【MySQL】求和查询,目标值int,但空数据时返回null的问题(Java)

    问题分析 int selectDeviceMonthRepairCount(String deviceType, String month); <select id="selectDe ...

  4. Qt开源作品23-颜色拾取器

    一.前言 在做很多项目的UI界面的时候,相信绝大部分人都有过抄袭别人的UI界面尤其是颜色的时候,毕竟十个程序员九个没有审美,或者说审美跟一坨屎一样,大家主要的精力以及擅长点都是在写功能实现具体功能上面 ...

  5. 深度解析Mamba与状态空间模型:一图带你轻松入门

    1.概述 Transformer架构无疑是大型语言模型(LLMs)成功背后的核心动力.从开源的Mistral到封闭的ChatGPT,几乎所有主流的LLM都在使用这一架构.然而,随着技术的不断进步,研究 ...

  6. .net core反射练习-简易版IOC容器实现

    实现一个简易的IOC容器 先说一下简单思路,参考ServiceCollection,需要一个注册方法跟获取实例方法,同时支持构造函数注入.那么只需要一个地方存储注册接口跟该接口的继承类,以及根据类的构 ...

  7. 在Ubuntu WSL2里配置GDAL Docker环境

    在Ubuntu WSL2里配置GDAL Docker环境 启用systemd # Ubuntu中执行 echo -e "[boot]\nsystemd=true" | sudo t ...

  8. CDS标准视图:日期迁移视图 I_ShiftedCalendarDate

    视图名称:I_ShiftedCalendarDate 视图类型:带参数的视图 时间期间偏移量单位(P_TimePeriodOffsetUnit): D代表天 W代表周 M代表月 Q代表季 Y代表年 期 ...

  9. C#正则表达式匹配候选词

    来自文心一言(多次修改才正确的): public App() { string input = "例子文字{备选,:'词1t324|备选词2gdfg,该方法|备选词3dsfdsf}继续{备选 ...

  10. Spring-RetryTemplate-RestTemplate的使用

    ------------------------------------------------------------------------------------ 1.基本概念 1.1应用场景 ...