i18n 資源國際化 vue項目中切換多語言

在vue項目中需要用到多語言,然后百度了一些前輩的文章,都是推薦用i18n。所以我也在這里寫一寫我自己的總結。

安裝

npm install vue-i18n


使用

/* 在main.js 里面引用 */

import VueI18n from 'vue-i18n'

Vue.use(VueI18n)


初始化 ?

同樣是在main.js里面加入

const ?i18n ?= new VueI18n({

????locale: 'zh', ? ? ? ? //設置默認語言

????messages: {

????????'zh': require('@/common/lang/zh.js'),

????????'en': require('@/common/lang/en.js')

????}

})


創建JS文件

我個人是在我項目的根目錄下的common/lang下創建了兩個js文件,中文 zh ?英文 en

zh.js 的代碼如下

module.exports = {

? ? message: {

? ? ? ? ?demo: '這是一個例子'

? ? }

}


en.js 的代碼如下

module.exports = {? ?

? ? ?message: {

? ?????????? ?demo: 'demo'

? ? }

}


完成這些步驟就可以在頁面里面引用了

<div>

? ? {{ $t('message.demo')}}

</div>


也可以在屬性里面引用

<div>

? ? <input ?:placeholder=" $t(' message.demo')" ?/>

</div>


切換語言

html部分

? ? <button @click="changeLang" id="zh">中文</button>

? ???<button @click="changeLang" id="en">英文</button>

JS部分

? ? methods: {

? ?? ???? changeLang (e){

? ? ? ? ? ? ? ?this.$i18n.locale = e.target.id

? ? ????}

? ? ?}



這樣就實現了多語言的切換啦



附帶上我項目里多語言的截圖


點擊English就可以切換到英語


切換成功~~

好了,以上就是我對i18n做的一個小總結,也是我自己發表的第一篇文章。如果表達不對或者有錯誤,歡迎大家給我留言指出。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容