Vue如何基于vue-i18n实现多国语言兼容


Posted in Javascript onJuly 17, 2020

vue中使用 vue-i18n 兼容多国语言

1.安装:npm install vue-i18n --save-dev

2.在main.js文件中引入:

import VueI18n from 'vue-i18n'
Vue.use(VueI18n) // 通过插件的形式挂载,通过全局方法 Vue.use() 使用插件const i18n = new VueI18n({
 locale: 'zh', // 语言标识 //this.$i18n.locale // 通过切换locale的值来实现语言切换
 messages: {
  'zh': require('./VueI18n/language-zh'), //
  'en': require('./VueI18n/language-en')
 }
})
Vue.config.productionTip = false
/* eslint-disable no-new */
new Vue({
 el: '#app',
 router,
 i18n,
 components: { App },
 template: '<App/>'
})

3.在src下新建文件夹VueI18n(文件名字可自己定) 然后在文件夹下建立两个文件language-zh.js和language-en.js

你也可以创建的是两个json文件 如language-zh.json但是里面的格式也改成json格式

json 格式:

{
"lang":{


"home": "HHHHHHHHome",


"name": 'Chinese'

}
}

在main.js中引入这两个文件

Vue.use(VueI18n) // 通过插件的形式挂载,通过全局方法 Vue.use() 使用插件const i18n = new VueI18n({
 locale: 'zh', // 语言标识 //this.$i18n.locale // 通过切换locale的值来实现语言切换
 messages: {
  'zh': require('./VueI18n/language-zh'), //引入language-zh.js language-en,js
  'en': require('./VueI18n/language-en')
 }
})

Vue如何基于vue-i18n实现多国语言兼容

language-zh.js

Vue如何基于vue-i18n实现多国语言兼容

language-en.js

Vue如何基于vue-i18n实现多国语言兼容

4.在组件中开始使用

<template>
 <div class="content">
  <span>{{ $t('lang.home')}}</span>
  <span>{{ $t('lang.name')}}</span>
  <span @click="changeLaguages()">切换语言</span>
  <!-- <span v-if="lang==='zh'" @click="changezh" style="display:block" class="color">中文</span> -->
  <!-- <span v-else ="lang==='en'" @click="changeen" style="display:block">english</span> -->
 </div>
</template>

<script>
export default {
 data () {
  return {
   lang: 'zh'
  }
 },
 methods: {
  changeLaguages () {
   console.log(this.$i18n.locale)
   let lang = this.$i18n.locale === 'zh' ? 'en' : 'zh'
   this.$i18n.locale = lang
  }
  // changezh () {
  //  this.lang = '中文'
  //  this.$i18n.locale = 'zh'
  // },
  // changeen () {
  //  this.lang = 'english'
  //  this.$i18n.locale = 'en'
  // }
 }
}
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped lang="scss">
@import '@/assets/scss/index.scss';
</style>

点击切换语言 这样就完成了一个简单的国际化。language-en.js language-zh.js这两个文件是要翻译的内容,通过$t(' ') 完成调用。

Ps:亲测可用,只为备忘,仅供参考

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于JQuery制作的产品广告效果
Dec 08 Javascript
JavaScript判断一个URL链接是否有效的实现方法
Oct 08 Javascript
自动最大化窗口的Javascript代码
May 22 Javascript
IE与FF下javascript获取网页及窗口大小的区别详解
Jan 14 Javascript
Node.js中child_process实现多进程
Feb 03 Javascript
JS实现的仿QQ空间图片弹出效果代码
Feb 23 Javascript
React.js入门实例教程之创建hello world 的5种方式
May 11 Javascript
js对字符串进行编码的方法总结(推荐)
Nov 10 Javascript
JavaScript动态数量的文件上传控件
Nov 18 Javascript
RequireJS 依赖关系的实例(推荐)
Jan 21 Javascript
微信小程序 chooseImage选择图片或者拍照
Apr 07 Javascript
VUE解决微信签名及SPA微信invalid signature问题(完美处理)
Mar 29 Javascript
jquery实现有过渡效果的tab切换
Jul 17 #jQuery
使用Vue-cli 中为单独页面设置背景图片铺满全屏
Jul 17 #Javascript
vue 点击其他区域关闭自定义div操作
Jul 17 #Javascript
vue v-for出来的列表,点击某个li使得当前被点击的li字体变红操作
Jul 17 #Javascript
利用Vue的v-for和v-bind实现列表颜色切换
Jul 17 #Javascript
基于js实现判断浏览器类型代码实例
Jul 17 #Javascript
Vue实现背景更换颜色操作
Jul 17 #Javascript
You might like
编写PHP的安全策略
2006/10/09 PHP
如何修改和添加Apache的默认站点目录
2013/07/05 PHP
PHP 正则表达式常用函数
2014/08/17 PHP
什么情况下可以不写PHP的闭合标签“?&gt;”
2014/08/28 PHP
PHPCMS手机站伪静态设置详细教程
2017/02/06 PHP
利用PHPExcel读取Excel的数据和导出数据到Excel
2017/05/12 PHP
PHP单例模式模拟Java Bean实现方法示例
2018/12/07 PHP
Laravel实现批量更新多条数据
2020/04/06 PHP
关于firefox的ElementTraversal 接口 使用说明
2010/11/11 Javascript
ext前台接收action传过来的json数据示例
2014/06/17 Javascript
JQuery表格拖动调整列宽效果(自己动手写的)
2014/09/01 Javascript
JS 使用for循环遍历子节点查找元素
2014/09/06 Javascript
jquery实现类似淘宝星星评分功能有截图
2014/09/15 Javascript
JavaScript删除数组元素的方法
2015/03/20 Javascript
Bootstrap3.0学习教程之JS折叠插件
2016/05/27 Javascript
react.js 获取真实的DOM节点实例(必看)
2017/04/17 Javascript
详解Vue路由History mode模式中页面无法渲染的原因及解决
2017/09/28 Javascript
vue使用$emit时,父组件无法监听到子组件的事件实例
2018/02/26 Javascript
详解如何使用babel进行es6文件的编译
2018/05/29 Javascript
vue 巧用过渡效果(小结)
2018/09/22 Javascript
简单了解JavaScript中的执行上下文和堆栈
2019/06/24 Javascript
python编写简易聊天室实现局域网内聊天功能
2018/07/28 Python
Python多线程处理实例详解【单进程/多进程】
2019/01/30 Python
Python 3.8新特征之asyncio REPL
2019/05/28 Python
python实现连连看辅助之图像识别延伸
2019/07/17 Python
Python面向对象封装操作案例详解 II
2020/01/02 Python
详解html5 shiv.js和respond.min.js
2018/01/24 HTML / CSS
适合各种场合的美食礼品:Harry & David
2016/08/03 全球购物
英国网上花店:Bunches
2016/11/29 全球购物
销售行业个人求职自荐信
2013/09/25 职场文书
医学生自我鉴定范文
2013/11/08 职场文书
售后客服工作职责
2014/06/16 职场文书
大二学生学年自我鉴定
2014/09/12 职场文书
2019优秀干部竞聘演讲稿范文!
2019/07/02 职场文书
研究生学习计划书应该怎么写?
2019/09/10 职场文书
golang用type-switch判断interface的实际存储类型
2022/04/14 Golang