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 切换语言的更多相关文章

  1. vue,elementUI切换主题,自定义主题

    本文介绍两种elementUI切换主题色的方法 项目示例:http://test.ofoyou.com/theme/ git代码:记得star哦,谢谢 1:官方提供的方法,直接修改scss文件达到修改 ...

  2. 使用vue国际化中出现内置的组件无法切换语言的问题(element-ui、ivew)

    在main.js中引入对应组件的语言包 eg: import VueI18n from 'vue-i18n'; // 引入国际化 import elementEn from 'element-ui/l ...

  3. Vue + Element-ui实现后台管理系统(3)---面包屑 + Tag标签切换功能

    面包屑 + Tag标签切换功能 有关后台管理系统之前写过两遍博客,看这篇之前最好先看下这两篇博客.另外这里只展示关键部分代码,项目代码放在github上: mall-manage-system 1.V ...

  4. vue实现多语言国际化(vue-i18n),结合element ui、vue-router、echarts以及joint等。

    老板说我们的项目要和国际接轨,于是乎,加上了多语言(vue-i18n).项目用到的UI框架是element ui ,后续echarts.joint等全都得加上多语言. 一.言归正传,i18n在vue项 ...

  5. vue + element-ui 国际化实现

    1. 安装组件和插件 cnpm i element-ui -S // 安装elementcnpm i vue-i18n -S //安装i18n 2.将国际化资源放在assets目录下 3.在src下新 ...

  6. vue+element-ui国际化(i18n)

    1. 下载element-ui和vue-i18n: npm i element-ui --save   npm i vue-i18n –save 2.  创建一个  i18n 文件夹, 在main.j ...

  7. SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 后端篇(一): 搭建基本环境、整合 Swagger、MyBatisPlus、JSR303 以及国际化操作

    相关 (1) 相关博文地址: SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 前端篇(一):搭建基本环境:https://www.cnblogs.com/l-y- ...

  8. vue+elementUI+vue-i18n 实现国际化

    在main.js同级建i18n文件夹,并里面建i18n.js.langs文件夹,langs文件夹下建en.js.cn.js目录如下: . ├── App.vue ├── assets │   └── ...

  9. spring boot + vue + element-ui全栈开发入门——集成element-ui

     一.IDE开发工具 常用的开发工具有webstorm和sublime. 我个人喜好用Atom+插件的形式 打开Atom,在file --> settings --> packages中收 ...

随机推荐

  1. 网页结构树DOM

    引入 window对象 所有浏览器都支持 window 对象.它表示浏览器窗口. *如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创建一个 window 对象,并为 ...

  2. [BZOJ2839]:集合计数(组合数学+容斥)

    题目传送门 题目描述 .(是质数喔~) 输入格式 一行两个整数N,K. 输出格式 一行为答案. 样例 样例输入: 3 2 样例输出: 样例说明 假设原集合为{A,B,C} 则满足条件的方案为:{AB, ...

  3. Maven构建生命周期

    以下引用官方的生命周期解释https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html: 一.构建生命 ...

  4. vue 在移动端实现红包雨 (兼容性好)

    下面是代码:<template>    <div class="ser_home">        <ul class="red_packe ...

  5. [LeetCode]-DataBase-Employees Earning More Than Their Managers

    The Employee table holds all employees including their managers. Every employee has an Id, and there ...

  6. 20165218 《网络对抗技术》Exp6 信息收集与漏洞扫描

    Exp6 信息收集与漏洞扫描 实践过程记录 一.各种搜索技巧的应用 1_搜索网址目录结构 dir_scanner use auxiliary/scanner/http/dir_scanner This ...

  7. Linux内核中的cmpxchg函数

    http://www.longene.org/forum/viewtopic.php?t=2216 前几天,为了这个函数花了好多时间,由于参考的资料有误,一直都没有看明白,直到google之后,总算搞 ...

  8. java hashset输出

    for (Map.Entry<String, String> me : id_label_map.entrySet()) { System.out.println(me.getKey() ...

  9. App测试工具选择

    一.功能测试自动化 a) 轻量接口自动化测试: jmeter, b) APP UI层面的自动化 android:UI Automator Viewer,Android Junit,Instrument ...

  10. gitlab+jenkins 搭建

    继前一篇gitlab,这一篇介绍jenkins搭建并与gitlab进行集成---这里不是详细的步骤 环境系统:centos 7.3 jenkins版本:jenkins-2.176.1-1.1.noar ...