1. 程式人生 > >最近自己研究做了個vue國際化demo,總結如下

最近自己研究做了個vue國際化demo,總結如下

vue專案做多語言(國際化) 第一步、安裝vue-i18n npm install vue-i18n 第二步、在main.js中引入vue-i18n(如下圖) 第三步、建兩個語言包檔案,目錄結構如下圖: 第四步、給這兩個檔案裡寫靜態的頁面展示資料 1、en.js(內容如下圖) 2、zh.js(內容如下圖) 第五步:1、html裡面使用如下圖 第六步:介面層面實現多語言,方案為: 在HTTP請求頭中攜帶語言資訊,介面服務根據語言,返回不同的語言環境響應體。 本專案 vue.js 我們使用了 axios 元件,實現的話就統一在HTTP請求request攔截器中處理,程式碼如下:(具體內容見axios.js) // http request 攔截器 axios.interceptors.request.use( config => { // 語言環境設定 let currentLang = utils.get('CurrentLang') if (currentLang === 'en-US') { config.headers['X-Client-Language'] = 'en-US' } else { config.headers['X-Client-Language'] = 'zh-CN' } return config }, err => { return Promise.reject(err) }) 後續一:因為提示性語言用的地方比較多都寫在元件內部顯得重複(見one.vue元件裡的methods裡的clickfun事件),我在這裡把它寫了專門的JS檔案(見tips.js),哪裡用到哪裡呼叫(見one01.vue裡的methods裡的clickfun事件)【後續一里提到的幾個檔案都在我的有道雲筆記裡】