Vue多语言支持
i18n插件实现多语言支持,本文以中英文为例记录一下配置过程。
1.配置

export default {
'home': {
'route': 'Tour Route',
'report': 'Issue Report'
}
}
zh.js // 配置中文显示的内容
export default {
'home': {
'route': '游览路线',
'report': '问题上报'
}
}
1.3配置i18n
i18n.js //这里面配置i18n插件
引入Vue, vue-i18n,导入中英文内容文件zh.js 和en.js
(项目使用了iview组件,所以有iview相关的文件引入)
import Vue from 'vue'
import I18n from 'vue-i18n'
import zh from './zh'
import en from './en'
import iviewEn from 'iview/dist/locale/en-US'
import iviewZh from 'iview/dist/locale/zh-CN' Vue.use(I18n)
const messages = {
en: Object.assign(en, iviewEn),
zh: Object.assign(zh, iviewZh)
} function getLocal () {
let lang = 'en'
if (Vue.env && Vue.env.language) {
lang = Vue.env.language
}
return lang
} const i18n = new I18n({
locale: getLocal(),
messages
}) export default i18n
13 Vue.use(iView, {
14 i18n: (key, value) => i18n.t(key, value)
15 })
)
import Vue from 'vue'
import App from './App'
import router from './router'
import './assets/iconfont/iconfont.css'
import iView from 'iview'
import './assets/css/mapbox-gl-v0.54.0.css'
import './assets/iview-styles/iview.css'
import axios from 'axios'
import i18n from './lang/i18n' Vue.config.productionTip = false Vue.use(iView, {
i18n: (key, value) => i18n.t(key, value)
}) new Vue({
el: '#app',
router,
i18n,
components: {App},
template: '<App/>'
})
2.使用:
html中直接使用 $t("home.report") 即可获取zh.js或en.js中home对象的report属性
<i-col span="11" >
<Button size="large" type="text" custom-icon="iconfont icon-shangbaowenti" @click="report">
{{$t("home.report")}}
</Button>
</i-col>
js中通过Vue实例的$t获取
mounted () {
console.info(this.$t("home.report"))
}
切换语言时只需要改变$i18n.locale的值即可。
switchLanguage () {
this.$i18n.locale = 'zh' // 'en'
}
使用vue-i18n插件做语言切换比较方便,记录一下,欢迎留言交流~
Vue多语言支持的更多相关文章
- 分享两种实现Winform程序的多语言支持的解决方案
因公司业务需要,需要将原有的ERP系统加上支持繁体语言,但不能改变原有的编码方式,即:普通程序员感受不到编码有什么不同.经过我与几个同事的多番沟通,确定了以下两种方案: 方案一:在窗体基类中每次加载并 ...
- EnumHelper.cs枚举助手(枚举描述信息多语言支持)C#
C#里面经常会用到枚举类型,枚举是值类型对象,如果你想用枚举类型的多属性特性,或者你想在MVC页面上通过简单的值类型转换,将某字段值所代表的含义转换为文字显示,这时候必须要将枚举扩展,是它支持文本描述 ...
- ios调用系统相册、相机 显示中文标题、本地化多语言支持
因为调用系统相册.相机需要显示中文,所以搞了半天才知道是在Project->info->Custom ios Target Properties 添加 Localizations 并加入C ...
- (视频)《快速创建网站》 3.3 国际化高大上 - WordPress多语言支持
本文是<快速创建网站>系列的第7篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http://devopshub.cn/tag ...
- tp 多语言支持
tp支持多语言 通过get来改变语言的 http://localhost/tp/index.php/Admin/User/add/hl/zh-cn http://localhost/tp/index. ...
- iOS-生成国际化包-配置App多语言支持
标签: ios国际化 ios多语言支持 xcode多语言支持 xcode生成多语言 国际化 it 分类: 功能知识 如果你的App需要支持多国语言.那么,就应该为你的App应用添加“国际化”支 ...
- Zend Framework 入门(2)—多国语言支持
如果你的项目想要支持多语言版本,那么就需要用到 Zend_Translate.Zend_Translate 的详细文档在这里,不过如果想偷懒的话,也很简单,在View Helpers 文档中介绍了如何 ...
- 【转】解析JDK 7的动态类型语言支持
http://www.infoq.com/cn/articles/jdk-dynamically-typed-language Java虚拟机的字节码指令集的数量自从Sun公司的第一款Java虚拟机问 ...
- Windows Phone 8本地化多语言支持
原文 Windows Phone 8本地化多语言支持 在WP8平台处理本地化多语言的支持还是比较容易的,大部分工作都有VS IDE处理,开发者只需简单操作,并翻译本地资源即可实现. 无论您目前的应用是 ...
随机推荐
- 数组模拟循环队列(java实现)
1.front变量的含义:front就指向队列的第一个元素,也就是说arr[front]就是队列的第一个元素front的初始值=0. 2.rear变量的含义:rear指向队列的最后一个元素的后一个位置 ...
- 八皇后问题——列出所有的解,可推至N皇后
<数据结构>--邓俊辉版本 读书笔记 今天学习了回溯法,有两道习题,一道N皇后,一道迷宫寻径.今天,先解决N皇后问题.由于笔者 擅长java,所以用java重现了八皇后问题. 注意是jav ...
- FZU2018级算法第五次作业 m_sort(归并排序或线段树求逆序对)
首先对某人在未经冰少允许情况下登录冰少账号原模原样复制其代码并且直接提交的赤裸裸剽窃行为,并且最终被评为优秀作业提出抗议! 题目大意: 给一个数组含n个数(1<=n<=5e5),求使用冒泡 ...
- PB笔记之第一行数据不能删除的解决方法
如果第一行数据不能删除,则单独写SQL进行删除 window lw_sheet //dw_1.event pfc_deleterow()long i String ls_manidInteger ls ...
- CCF 2017-03-1 分蛋糕
CCF 2017-03-1 分蛋糕 题目 问题描述 小明今天生日,他有n块蛋糕要分给朋友们吃,这n块蛋糕(编号为1到n)的重量分别为a1, a2, -, an.小明想分给每个朋友至少重量为k的蛋糕.小 ...
- Java LowerBound
Java LowerBound /** * <html> * <body> * <P> Copyright 1994-2018 JasonInternational ...
- R_数据操作_高级_04
数学函数: abs(x) 绝对值 sqrt(x) 平方根 ceiling(x) 放回不小于x的最小整数 floor(x) 不小于x的最大整数 trunc(x) 先0方向截取x的整数部分 ...
- VBA循环(十一)
当需要多次执行一段代码时,就可以使用循环语句. 一般来说,语句是按顺序执行的:函数中的第一个语句首先执行,然后是第二个,依此类推. 编程语言提供了各种控制结构,允许更复杂的执行路径. 循环语句允许多次 ...
- javascript_06-控制流程
流程控制 程序的三种基本结构 顺序结构 选择结构 循环结构 判断语句 if 语法: if(condition){ //todo }else if{ //todo }else{ //todo } var ...
- layui切换
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...