为了账号安全,请及时绑定邮箱和手机立即绑定

vue多语言插件vue-i18n使用介绍

前言

多语言,一听很高大上,象征着与国际接轨,中文版(简体、繁体)、英文版、日文版等等。感觉6b的不要不要的,下面来看看vue怎么来实现这个操作了?(其实很简单)

vue多语言插件vue-i18n使用介绍

详细步骤

安装vue-i18n

npm install vue-i18n -S

引入

在main.js中引入vue-i18n

import VueI18n from 'vue-i18n'
Vue.use(VueI18n)

定义语言文件

const messages = {
  //简体中文
  cn: {
    message: {
      hello: '你好',
      author: '龙的传人'
    }
  },
  //英文
  en: {
    message: {
      hello: 'Hello',
      author: 'Chinese'
    }
  },
  // 繁体中文
  tw: {
    message: {
      hello: '你好',
      author: '龍的傳人'
    }
  }
}

vue-i18n初始化

const i18n = new VueI18n({
  locale: 'cn', // 默认语言
  messages
})

vue-i18n挂载到vue实例

new Vue({
  el: '#app',
  router,
  i18n, // i18n
  template: '<App/>',
  components: { App }
})

vue模板文件中使用

<h1>{{ $t("message.hello") }}</h1>

js中使用

computed:{
    hello(){
       return this.$t("message.hello") + this.$t("message.author");
    } 
}

切换语言

this.$i18n.locale = 'en' // 切换英文

单独定义语言文件 并加载到vue-i18n初始化中

// cn.js
export default {
  message: {
    hello: '你好',
    author: '龙的传人'
  }
}
// en.js
export default {
  message: {
    hello: 'Hello',
    author: 'Chinese'
  }
}
import cnlang from './lang/cn.js'
import enlang from './lang/en.js'
const i18n = new VueI18n({
  locale: 'cn', // 默认语言
  messages: {
  	'cn': cnlang,
	'en': enlang
  }
})

喜欢小编的记得点击关注哦,原文网址:web秀

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
Web前端工程师
手记
粉丝
1.5万
获赞与收藏
5278

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消