vue + element-ui 國際化實現(xiàn)

1. 安裝組件和插件

cnpm i element-ui -S // 安裝element

cnpm i vue-i18n -S //安裝i18n


2.將國際化資源放在assets目錄下



3.在src下新建i18n目錄,創(chuàng)建一個 index.js;路徑src\i18n\index.js

import Vue from 'vue'

import VueI18n from 'vue-i18n'

import ElementLocale from 'element-ui/lib/locale'

import enLocale from 'element-ui/lib/locale/lang/en'

import zhLocale from 'element-ui/lib/locale/lang/zh-CN'

import langZh from "@/assets/languages/zh.js"

import langEN from "@/assets/languages/en.js"

Vue.use(VueI18n)

const i18n = new VueI18n({

? locale: 'zh',

? messages: {

? ? 'zh': {...langZh,...zhLocale},

? ? 'en': {...langEN,...enLocale}

? }

})

ElementLocale.i18n((key, value) => i18n.t(key, value))

export default i18n



4.在main.js引用

import i18n from './i18n/index'

import locale from 'element-ui/lib/locale/lang/en'

Vue.use(ElementUI, { locale })

new Vue({

? el: '#app',

? i18n,

? router,

? components: { App },

? template: '<App/>'

})



5.頁面中使用$t引用

<el-radio v-model="theme" label="1">{{$t('common.risk')}}</el-radio>



6.切換語言

switchLang(val){

????this.$i18n.locale=val;//此處val為 zh 或者 en

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容