i18n国际化

上来就干货!

安装i18n

npm install vue-i18n

项目中创建i18n文件夹分别存放 index.jszh.jsen.js

  • index.js
import Vue from 'vue'
import VueI18n from 'vue-i18n'
import zh from './zh'
import en from './en'
import store from '@/store' //引入vux做状态管理
console.log(store.getters.getI18n)
Vue.use(VueI18n)
const i18n = new VueI18n({
    locale: store.getters.getI18n, //设置默认语言'zh'
    messages: {  zh, en }
})
export default i18n
  • zh.js
export default {
    language:'起来,不愿做奴的人们~'
}
  • en.js
export default {
    language:'Hello word~'
}

main.js 文件引入

import Vue from 'vue'
import App from './App'
import store from './store'
import i18n from './i18n'
new Vue({
  el: '#app',
  store,
  i18n,
  components: { App },
  template: '<App/>'
})

使用

<template>
    <p @click="changlang('en‘’)">{{$t('language')}}</p>
</template>
import { mapActions, mapGetters } from "vuex";
export default {
    methods: {
        ...mapActions(["setI18n"]),
        // 切换语言
        changlang(lan) {
            this.setI18n(lan);
            this.$i18n.locale = lan;
        } 
   }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • vue-i18n 在src/目录下新建lang文件夹lang/文件中有en.js,index.js,zh.js例如...
    风间澈618阅读 10,656评论 4 3
  • demo 场景需求分析 需求很简单,左上角 ‘’网易云音乐‘’就是一个中英文切换的按钮,点击弹出提示框,确认切换语...
    _双眸阅读 6,418评论 1 1
  • 1.下载安装vue-i18n(以下都可以)npm install vue-i18n / npm install ...
    陌紫嫣阅读 11,025评论 0 1
  • 最近在做的一个网站需要加上一个英文版(看过之前文章的会知道),点击按钮切换中文/英文,在这里记录下实现过程。 需求...
    web30阅读 7,144评论 6 4
  • xzhuan原创稿件,转载请注明出处!使用Lua 也很久了,这里写一点使用心得 Lua 继承的使用 主要用到的是 ...
    xzhuan阅读 3,142评论 0 0