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

1.配置

1.1安装:npm install vue-i18n --save
1.2创建中英文配置项文件
src/lang目录下创建以下文件:
 
en.js  // 配置英文显示的内容
 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
 
main.js中导入i18n,放入Vue的实例中,这样所有组件都可以使用了。
(  项目使用了iview组件,所以有如下配置
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多语言支持的更多相关文章

  1. 分享两种实现Winform程序的多语言支持的解决方案

    因公司业务需要,需要将原有的ERP系统加上支持繁体语言,但不能改变原有的编码方式,即:普通程序员感受不到编码有什么不同.经过我与几个同事的多番沟通,确定了以下两种方案: 方案一:在窗体基类中每次加载并 ...

  2. EnumHelper.cs枚举助手(枚举描述信息多语言支持)C#

    C#里面经常会用到枚举类型,枚举是值类型对象,如果你想用枚举类型的多属性特性,或者你想在MVC页面上通过简单的值类型转换,将某字段值所代表的含义转换为文字显示,这时候必须要将枚举扩展,是它支持文本描述 ...

  3. ios调用系统相册、相机 显示中文标题、本地化多语言支持

    因为调用系统相册.相机需要显示中文,所以搞了半天才知道是在Project->info->Custom ios Target Properties 添加 Localizations 并加入C ...

  4. (视频)《快速创建网站》 3.3 国际化高大上 - WordPress多语言支持

    本文是<快速创建网站>系列的第7篇,如果你还没有看过之前的内容,建议你点击以下目录中的章节先阅读其他内容再回到本文. 访问本系列目录,请点击:http://devopshub.cn/tag ...

  5. tp 多语言支持

    tp支持多语言 通过get来改变语言的 http://localhost/tp/index.php/Admin/User/add/hl/zh-cn http://localhost/tp/index. ...

  6. iOS-生成国际化包-配置App多语言支持

      标签: ios国际化 ios多语言支持 xcode多语言支持 xcode生成多语言 国际化 it 分类: 功能知识   如果你的App需要支持多国语言.那么,就应该为你的App应用添加“国际化”支 ...

  7. Zend Framework 入门(2)—多国语言支持

    如果你的项目想要支持多语言版本,那么就需要用到 Zend_Translate.Zend_Translate 的详细文档在这里,不过如果想偷懒的话,也很简单,在View Helpers 文档中介绍了如何 ...

  8. 【转】解析JDK 7的动态类型语言支持

    http://www.infoq.com/cn/articles/jdk-dynamically-typed-language Java虚拟机的字节码指令集的数量自从Sun公司的第一款Java虚拟机问 ...

  9. Windows Phone 8本地化多语言支持

    原文 Windows Phone 8本地化多语言支持 在WP8平台处理本地化多语言的支持还是比较容易的,大部分工作都有VS IDE处理,开发者只需简单操作,并翻译本地资源即可实现. 无论您目前的应用是 ...

随机推荐

  1. [SourceTree] - 使用内置 Git 克隆项目出现 templates not found 问题之解决

    背景 使用 SourceTree 克隆 Asp.Net Core 项目失败. 错误 warning: templates not found C:\Program Files\Git\share\gi ...

  2. QT 创建本地数据库(SQLite数据库)存储数据

    注意:QT自带SQLITE数据库,不需要再安装 1.创建一个包含创建.查询.修改和删除数据库的数据库类(DataBase) DataBase.h头文件 #pragma once #include &l ...

  3. 怎样输出Hello World

    方法一: 进入python交互模式, 然后使用: print()函数输出 方法二:  新建一个.py文件, 然后写入print()函数, 再使用python命令执行输出:

  4. 获取ApplicationContext进而获取Ioc实例方法

    在正常情况下 spring管理的类可直接调用Ioc容器中的实例,但在一些特殊情况下(例如拦截器中获取dao实例),Bean需要实现某个功能,但该功能必须借助于Spring容器才能实现,此时就必须让该B ...

  5. 如何录屏做GIF图

    网上找了一下,ScreenToGif 这个神器 https://github.com/NickeManarin/ScreenToGif https://github.com/NickeManarin/ ...

  6. C#,WinForm文本框录入内容判断

    || e.KeyChar > ) && (e.KeyChar != ) && (e.KeyChar != ) && (e.KeyChar != ) ...

  7. glance

    第二篇glance— 镜像服务 一.glance介绍:              Glance是Openstack项目中负责镜像管理的模块,其功能包括虚拟机镜像的查找.注册和检索等. Glance提供 ...

  8. 移动端调试工具Vconsole

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. 【完整篇】orangepi香橙派新手入门之被官方坑

    图片特意缩小,看不清请打开另一个窗口查看原图. 第一步:烧录系统,我烧录的是Ubuntu_Desktop[请注意!!!!用户名是错的!!用户名是错的!!用户名是错的!!] 正确的用户名是orangep ...

  10. win10 下的anaconda3 安装(2019.06.04最新)

    最近电脑重装系统后,安装anaconda 发现有一些新的变动,容易出现一些新的问题,现在记录下来.(现在根据清华镜像的最新公告,清华anaconda 已经恢复,可以直接换成清华镜像的源了) 1 安装 ...