Vue I18n Vue.js 的国际化插件+elementUI的使用
先附上插件官网 vue-i18n中文官网
我们的vue项目需要支持多语言时,可以使用这个插件
安装插件教程在官网可以找到
代码结构可以如下

zh.js
查看代码
export default {
login: {
Login: "登陆",
},
};
index.js 的代码如下
这一部分在element官网可以找到相关文档
https://element.eleme.cn/#/zh-CN/component/i18n
查看代码
import Vue from 'vue';
import VueI18n from 'vue-i18n'
import elementEnLocale from "element-ui/lib/locale/lang/en"; // 引入elementui的国际化参数
import elementZhLocale from "element-ui/lib/locale/lang/zh-CN";
import customEnLocale from "./en"
import customZhLocale from "./zh-CN"
import ElementLocale from 'element-ui/lib/locale'
Vue.use(VueI18n)
const messages = {
en: {
...elementEnLocale,
...customEnLocale
},
zh: {
...elementZhLocale,
...customZhLocale
}
}
const i18n = new VueI18n({
locale: 'zh',
messages,
})
ElementLocale.i18n((key, value) => i18n.t(key, value))
export default i18n
在main.js中引入
查看代码
...
import i18n from './lang'
...
Vue.use(ElementUI, { i18n: (key, value) => i18n.t(key, value) });// elementui的国际化,
...
new Vue({
router,
store,
i18n,
render: h => h(App)
}).$mount('#app')
切换语言代码
header组件中切换
查看代码
<div class="lang-wrapper">
<el-dropdown @command="changeLang">
<span class="el-dropdown-link">
{{$i18n.locale}}<i class="el-icon-arrow-down el-icon--right"></i>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="zh">中文</el-dropdown-item>
<el-dropdown-item command="en">English</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
changeLang(command) {
this.$i18n.locale = command
},
template 中的代码
<el-button type="primary" @click="login">{{$t("login.Login")}}</el-button>
Vue I18n Vue.js 的国际化插件+elementUI的使用的更多相关文章
- vue日历(纯 js,没用任何插件和组件)
效果图: 代码: <template> <div class="calender"> <div class="top"> ...
- Polyglot Translators: Let's do i18n easier! 一款国际化插件小助手!
在做国际化文本有关的工作时, 是否厌倦了在不同应用或者网页之间频繁地切换进行中文, 繁体, 英文甚至韩文日文的文本翻译工作? 好吧, 我就是受不了频繁在进行文本字符串的转换, 还得跑到百度翻译上面搜索 ...
- Vue在单独引入js文件中使用ElementUI的组件
Vue在单独引入js文件中使用ElementUI的组件 问题场景: 我想在vue中的js文件中使用elementUI中的组件,因为我在main.js中引入了element包和它的css,并挂载到了全局 ...
- jquery/vue/react前端多语言国际化翻译方案指南
❝ 本文章共3470字,预计阅读时间5-10分钟. ❞ 国际化-前言 每个开发者能希望编写的程序可以让全世界的用户使用,它要求从产品中抽离所有地域语言,国家/地区和文化相关的元素.换种说法,「应用程序 ...
- 前端框架Vue.js——vue-i18n ,vue项目中如何实现国际化
本项目利用 VueI18n 组件进行国际化,使用之前,需要进行安装 $ npm install vue-i18n 一.框架引入步骤: 1. 先在 main.js 中引入 vue-i18n. // 国 ...
- Element + Vue I18n动态import加载国际化语言包翻译文件
需求 项目为多页应用,包含产品a.b.c.d.e,每个产品都有自己的翻译文件.一次加载所有翻译文件是极度不合理的.于是考虑动态加载. 实现 参考官方文档:延迟加载翻译 项目结构 │ ├── dist ...
- 在vue项目中的main.js中直接使用element-ui中的Message 消息提示、MessageBox 弹框、Notification 通知
需求来源:向后台请求数据时后台挂掉了,后台响应就出现错误,不做处理界面就卡住了,这时需要在main.js中使用axios的响应拦截器在出现相应错误是给出提示.项目使用element-ui,就调用里面的 ...
- js文本复制插件&vue
/* HTML: * <a href="javascript:;" class="copy" data-clipboard-text="copy ...
- 最全vue的vue-amap使用高德地图插件画多边形范围
一.在vue-cli的框架下的main.js(或者main.ts)中引入高德插件,代码如下: import Vue from 'vue' import VueAMap from 'vue-amap' ...
- 假如你想在VUE的main.js里根据条件按需引入注册组件以及样式,那就这样子写,附赠自己写的vue一个框架配置多系统按需加载系统路由以及组件办法
假如你想在VUE的main.js里根据条件按需引入注册组件以及样式,那就这样子写 举例来说我想要引入大屏的一些组件,但是原来框架已经集成了多个项目,路由也是按需加载的,想要实现组件按需加载 先在mai ...
随机推荐
- 神经网络基础部件-BN层详解
一,数学基础 1.1,概率密度函数 1.2,正态分布 二,背景 2.1,如何理解 Internal Covariate Shift 2.2,Internal Covariate Shift 带来的问题 ...
- IDEA手动导入jar包到maven本地库
第一步:下载需要的jar包 第二步:file project structure-liberaries 第三步:点击+号-选择java,再选择刚才下载的jar包,ok 此时我们把jar包加到项目了,但 ...
- Windows / Mac 安装Typora
Typora Typora 是一款支持实时预览的 Markdown 文本编辑器. 附件下载:Typora 附件 Windows版本 1.解压Typora_1.3.8_windows.rar文件 2.双 ...
- P26_wxss - 样式导入
样式导入 什么是样式导入 使用 WXSS 提供的 @import 语法,可以导入外联的样式表. @import 的语法格式 @import 后跟需要导入的外联样式表的相对路径,用 ; 表示语句结束.示 ...
- AEDR8300:光电编码程序构思
一.实验 1.光电反射理论是经过码盘的window时,电压变低,经过bar时,电压为高,这样可以通过检测到的脉冲数,来进行速度的获取.但是实际并不是这样, 反馈回来的信号是周期性的,经过试验发现,可以 ...
- 树莓派VNC复制粘贴
1.安装sudo apt install autocutsel 2.运行autocutsel -f
- 罗姆BU32107EFV缩写词
ADC Analog-to-Digital Converter Att Attenuation 衰减 AMix Analog Mixing AVol Analog Volume BPF Band-Pa ...
- Appium自动化(一)-window环境搭建详细教程
一.软件环境所需要运用的工具 1.JAVA1.8.1以上环境 2.AndroidSDK 3.Appium Desktop(appium servers) 4.Appium Client 5.Appiu ...
- 流量加密之:MSF流量加密
流量加密之:MSF流量加密 目录 流量加密之:MSF流量加密 1 背景 2 生成SSL证书 3 使用MSF生成带证书的后门 4 验证流量 1 背景 在MSF中生成shell,并上线运行时.都是通过ht ...
- vue弹窗后如何禁止滚动条滚动
toggleBody(isPin){ if(isPin){ document.body.style.height = '100vh' document.body.style['overflow-y'] ...