整体目录

  • 根据自己的需要加载表情包,不需要在页面上手动切换
  • 使用 i18n 手动切换语言

根据自己的需要加载表情包,不需要在页面上手动切换

// 在main.js中引入并设置// import locale from "element-ui/lib/locale/lang/zh-CN";
import locale from 'element-ui/lib/locale/lang/en'
Vue.use(ElementUI, { locale, size: 'small' })

使用 i18n 手动切换语言

  • 安装相关依赖
    npm install vue vue-i18n --save - 注意两者版本匹配问题,不然安装报错

  • 在 src 目录下创建 lang 文件夹(包含不同的语言包:zh.js\en.js…\index.js)。各个文件的内容如下:

    //zh.js
    export default {item: {username: '用户名',password: '密码',email: '邮箱',},
    }
    
    //en.js
    export default {item: {username: 'Username',password: 'Password',email: 'Email',},
    }
    
    //index.js
    import Vue from 'vue'
    import VueI18n from 'vue-i18n'
    import elementEnLocale from 'element-ui/lib/locale/lang/en'
    import elementZhLocale from 'element-ui/lib/locale/lang/zh-CN'
    import elementLocal from 'element-ui/lib/locale'import enLocale from './en'
    import zhLocale from './zh'Vue.use(VueI18n)const messages = {en: {...enLocale,...elementEnLocale,},zh: {...zhLocale,...elementZhLocale,},
    }const i18n = new VueI18n({locale: localStorage.getItem('language') || 'zh',messages,
    })
    elementLocal.i18n((key, value) => i18n.t(key, value))export default i18n
    
    • 在 src/store 中设置 language 的相关信息
    //src/store/index.js
    import Vue from 'vue'
    import Vuex from 'vuex'Vue.use(Vuex)export default new Vuex.Store({state: {language: localStorage.getItem('language') || 'zh',},mutations: {SET_LANGUAGE: (state, language) => {state.language = languagelocalStorage.setItem('language', language)},},actions: {setLanguage({ commit }, language) {commit('SET_LANGUAGE', language)},},getters: {language: (state) => {return state.language},},
    })
    
    • 在页面中应用完成语言的切换
    <template><div><el-dropdown trigger="click" @command="handleSetLanguage"><div>选择语言</div><el-dropdown-menu slot="dropdown"><el-dropdown-item :disabled="language === 'zh'" command="zh">中文</el-dropdown-item><el-dropdown-item :disabled="language === 'en'" command="en">English</el-dropdown-item></el-dropdown-menu></el-dropdown><div><p>用户:{{ $t('item.username') }}</p><p>密码:{{ $t('item.password') }}</p><p>邮箱:{{ $t('item.email') }}</p></div></div>
    </template>
    <script>export default {name: 'Lang',data() {return {dateTime: '',}},computed: {language() {return this.$store.getters.language},},methods: {handleSetLanguage(lang) {this.$i18n.locale = langthis.$store.dispatch('setLanguage', lang)},},}
    </script>
    

实现elementUI多语言切换相关推荐

  1. 【vue-element-admin】4.x 添加 i18n 国际化多语言切换

    花裤衩前辈的vue-element-admin模块在4.x的大版本中去除了对i18n国际化的支持,本次因项目需要,在一个基于 vue-element-admin V4.2.1 版本模板开发的项目中,需 ...

  2. 使用vue-i18n切换中英文-网页语言切换案例-vue文件中或路由(Router)文件中使用

    vue-i18n地址 安装 npm install vue-i18n 使用 在 main.js 中引入 vue-i18n (前提是要先引入 vue) import VueI18n from 'vue- ...

  3. 网页中英文语言切换解决方案

    网页中英文语言切换解决方案 参考文章: (1)网页中英文语言切换解决方案 (2)https://www.cnblogs.com/seasons1987/archive/2012/10/09/27163 ...

  4. Java Web的Struts2的多语种网站的多语言切换实例

    先看图图: 图1: 图2: 图3: 图4: 一 首先下载Properties Editor插件,该插件是支持中文的资源文件编辑器:MyEclipse 10.6 以上不用安装该插件,使用自带资源文件编辑 ...

  5. html怎么实现多语言图片切换,JavaScript实现--中英语言切换功能

    最近弄的项目是面向国际的,所以老总说要有语言切换功能.第一感觉好像不难吧 网上查了下,感觉实现方法就2种: 一:2个版本的HTML.至于怎么切换,方法也很多. 不过这种方法,除了笨,我实在不知道用什么 ...

  6. 安卓换语言java_Android应用程序的语言切换

    最近项目中用用到语言切换功能,第一想到的就是资源文件,没错. 在资源文件中新建一个文件夹values-en,在里面新建一个strings.xml,把默认values文件夹中的strings.xml中的 ...

  7. qml中loader加载页面会闪屏_Qml动态语言切换

    此方法需要在Qt5.10或更高版本实现, 在Qt5.10或更高版本实现, 在Qt5.10或更高版本实现 重要的事情说三遍 首先在工程文件.pro中加入TRANSLATIONS = zh_CN.ts ...

  8. WPF ComboBox 使用 ResourceBinding 动态绑定资源键并支持语言切换

    WPF ComboBox 使用 ResourceBinding 动态绑定资源键并支持语言切换 独立观察员  2021 年 8 月 23 日 我们平常在 WPF 中进行资源绑定操作,一般就是用 Stat ...

  9. Delphi XE2 之 FireMonkey 入门(18) - TLang(多语言切换的实现)

    一个小小的 TLang 类, 实现多语言切换, 挺好的. 它的工作思路是: 1.首先通过 AddLang('语言代码') 添加语言类别, 如: AddLang('en').AddLang('cn'). ...

  10. mfc oninitdialog 中的hwnd == null_在SOUI中使用动态多语言切换

    动态语言切换是很多国际化产品的需求,SOUI之前的版本支持静态多语言翻译,通过在程序启动时设置好语言翻译模块,在程序中打开的UI都会自动调用该翻译模块进行文字翻译,但是不支持运行进语言切换. 最近几个 ...

最新文章

  1. Android4.0.4之后,服务器返回401或者407时,获取不到消息体的解决办法
  2. Redis的一些问题
  3. 如何和女生聊天不进入友谊区
  4. Maven系列--setting.xml 配置详解
  5. datax 定时执行多个job_数据同步神器Datax源码重构
  6. js对于radio的处理
  7. 脚本文件和函数文件的区别
  8. 蓝桥杯 青少年创意编程大赛 scratch 组、中国电子学会scratch等级考试等
  9. 阶跃函数和符号函数的傅里叶变换
  10. 浅谈智能DNS云解析(二)
  11. 论文笔记(显微图像拼接)——A fast algorithm for material image sequential stitching
  12. Git GitHub GitLab 超全面学习笔记 -- 匠心之作
  13. 银行不良资产收益权转让 模式大起底
  14. Dan Pitt卸任ONF执行董事
  15. 新款「超大杯」iPhone遭爆料!不止大镜头,还有1TB储存,但却不能叫iPhone13
  16. PyTorch搭建卷积神经网络(CNN)进行视频行为识别(附源码和数据集)
  17. 前端开发 IE 中的常用调试工具 _ PlanABC - 怿飞’s Blog
  18. 从零开始跑——《爱上跑步的十三周》
  19. 最为精细的全球海岸线
  20. wireshark中解析IP地址对应域名

热门文章

  1. 【FPGA】按键消抖
  2. HTML5+CSS3项目实战之河马牙医首页、百度首页、Mac桌面、简书首页、登录注册页面、苏宁易购首页
  3. 2021年Java基础面试题总结
  4. 使用 spire.xls 免费版 excel 转换成 pdf
  5. visio绘制流程图连接线总拐弯
  6. SENTAURUS_2018_06
  7. r语言基本操作及数据处理(超详细)
  8. AD18单位mm和mil切换
  9. 在线URL解码还原工具
  10. 个人记录——洛谷试炼场,BOSS战!【新手村】