vue elementui 切换语言
1.安装插件:npm install vue-i18n --save
2.src下新建i18n文件夹,
i18n文件夹下创建langs文件夹和i18n.js文件
langs文件夹下创建cn.js; en.js; index.js
如图:

3. i18n.js:
import Vue from "vue";
import locale from 'element-ui/lib/locale'
import VueI18n from "vue-i18n";
import messages from "./langs"; Vue.use(VueI18n);
const i18n = new VueI18n({
locale: localStorage.lang || "cn",
messages
});
locale.i18n((key, value) => i18n.t(key, value)) export default i18n;
4. cn.js:
import zhLocale from "element-ui/lib/locale/lang/zh-CN";
const cn = {
message: {
login: "登录",
password: "密码不可为空",
upassword: "密码",
uname: "账户",
},
...zhLocale
}; export default cn;
5. en.js:
import enLocale from 'element-ui/lib/locale/lang/en'
const en = {
message: {
login: "Login",
password: "Password is required",
upassword: "password",
uname: "account"
},
...enLocale
}; export default en;
6.index.js:
import en from "./en";
import cn from "./cn";
export default {
en,
cn
};
7. main.js:
import Vue from 'vue'
import App from './App'
import store from './store'
import i18n from './i18n/i18n'
Vue.config.productionTip = false window.app = new Vue({
store,
i18n,
render: h => h(App)
}).$mount('#app')
以上就是配置好了,可以使用了
8. 使用:
//data()中声明
data() {
return {
lang: "",
};
},
//作为文本内容,绑定在标签中
<div class="manage_tip">
<span class="title">{{$t('message.login')}}</span>
</div>
//作为属性绑定
<el-form-item :label="$t('message.uname')" prop="pnone">
<el-input v-model="loginUser.pnone" placeholder="请输入手机或邮箱"></el-input>
</el-form-item>
//作为elementui 中的校验规则,要放在computed中
computed: {
rules() {
return {
password: [
{
required: true,
message: this.$t("message.password"),
trigger: "blur"
},
{
pattern: /^(?=.*\d)(?=.*[a-zA-Z])(?=.*[\W_]).{6,16}$/,
message: "输入6-16位包含数字、字母、特殊字符的密码",
trigger: "blur"
}
],
};
}
},
//切换中英文
<el-dropdown @command="handleCommand">
<span class="el-dropdown-link">
中英文切换
<i class="el-icon-arrow-down el-icon--right"></i>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="cn">中文</el-dropdown-item>
<el-dropdown-item command="en">英文</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown> //切换语言的事件
methods: {
// 根据下拉框的中被选中的值切换语言
handleCommand(command) {
// this.$message("click on item " + command);
switch (command) {
case "cn": {
this.lang = "cn";
this.$i18n.locale = this.lang;
break;
}
case "en": {
this.lang = "en";
this.$i18n.locale = this.lang;
break;
} default:
break;
}
},
}
vue elementui 切换语言的更多相关文章
- vue,elementUI切换主题,自定义主题
本文介绍两种elementUI切换主题色的方法 项目示例:http://test.ofoyou.com/theme/ git代码:记得star哦,谢谢 1:官方提供的方法,直接修改scss文件达到修改 ...
- 使用vue国际化中出现内置的组件无法切换语言的问题(element-ui、ivew)
在main.js中引入对应组件的语言包 eg: import VueI18n from 'vue-i18n'; // 引入国际化 import elementEn from 'element-ui/l ...
- Vue + Element-ui实现后台管理系统(3)---面包屑 + Tag标签切换功能
面包屑 + Tag标签切换功能 有关后台管理系统之前写过两遍博客,看这篇之前最好先看下这两篇博客.另外这里只展示关键部分代码,项目代码放在github上: mall-manage-system 1.V ...
- vue实现多语言国际化(vue-i18n),结合element ui、vue-router、echarts以及joint等。
老板说我们的项目要和国际接轨,于是乎,加上了多语言(vue-i18n).项目用到的UI框架是element ui ,后续echarts.joint等全都得加上多语言. 一.言归正传,i18n在vue项 ...
- vue + element-ui 国际化实现
1. 安装组件和插件 cnpm i element-ui -S // 安装elementcnpm i vue-i18n -S //安装i18n 2.将国际化资源放在assets目录下 3.在src下新 ...
- vue+element-ui国际化(i18n)
1. 下载element-ui和vue-i18n: npm i element-ui --save npm i vue-i18n –save 2. 创建一个 i18n 文件夹, 在main.j ...
- SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 后端篇(一): 搭建基本环境、整合 Swagger、MyBatisPlus、JSR303 以及国际化操作
相关 (1) 相关博文地址: SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 前端篇(一):搭建基本环境:https://www.cnblogs.com/l-y- ...
- vue+elementUI+vue-i18n 实现国际化
在main.js同级建i18n文件夹,并里面建i18n.js.langs文件夹,langs文件夹下建en.js.cn.js目录如下: . ├── App.vue ├── assets │ └── ...
- spring boot + vue + element-ui全栈开发入门——集成element-ui
一.IDE开发工具 常用的开发工具有webstorm和sublime. 我个人喜好用Atom+插件的形式 打开Atom,在file --> settings --> packages中收 ...
随机推荐
- scrapy项目2:爬取智联招聘的金融类高端岗位(spider类)
---恢复内容开始--- 今天我们来爬取一下智联招聘上金融行业薪酬在50-100万的职位. 第一步:解析解析网页 当我们依次点击下边的索引页面是,发现url的规律如下: 第1页:http://www. ...
- Tarjan算法初步
一.前置知识: 强连通分量:有向图强连通分量:在有向图G中,如果两个顶点vi,vj间(vi>vj)有一条从vi到vj的有向路径,同时还有一条从vj到vi的有向路径,则称两个顶点强连通(stron ...
- Linux6.6及以上版本配置oracle-ASM共享储存-UDEV-V1
1,在该路劲下创建50-udev.rules文件,将要创建成ASM设备的裸设备添加进去,并指定OWNER 两个节点进行创建 [root@oraclea rules.d]# pwd/etc/udev/r ...
- (三)mysql -- 逻辑控制
条件控制 CASE validity_date THEN '月' THEN '年' ELSE '季' END CASE THEN '月' THEN '年' ELSE '季' END 循环控制 待补充
- windows7 中 wacom数位板如何关闭点击水波 和长按右键这两个特效
就是点住笔尖不动,就会弹出右键,这个功能是微软操作系统具有的一项功能,,如果您感觉不便,可以按以下方法将其去掉: 1.打开"控制面板--笔和触摸--笔选项--按下并保持--设置": ...
- css中如何使用border属性与display属性
border属性介绍 border属性设置元素边框. 边框3个要素如:粗细.线型.颜色. 边框线型属性值说明表如: 属性指 描述 none 定义无边框. hidden 与 "none&quo ...
- 使用Runnable接口创建线程池
步骤: 创建线程池对象创建 Runnable 接口子类对象提交 Runnable 接口子类对象关闭线程池实例: class TaskRunnable implements Runnable{ @Ove ...
- AndroidStudio设置SVN忽略文件
方法一: 在SVN中进行设置: 在空白处右键单击,选择TortoiseSVN -> Settings ->General:在General界面找到Global ignore pattern ...
- Spring 由缓存切点驱动的通知者
Spring 缓存通知者和切点 缓存切点 /** * Spring 核心切点抽象 */ public interface Pointcut { /** * 类过滤器,当前切点是否需要织入在指定的类上 ...
- datalist的模板里的label要绑定一个函数
列下如何在前台绑定数据时呼叫後台方法 如下GetInfoByID是后台方法,Eval("ID").ToString()是你在前台绑定数据传入的字段名 <asp:Label I ...