国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

vue-i18n結(jié)合Element-ui的配置方法

2024-05-06 15:39:15
字體:
供稿:網(wǎng)友

使用方法:

在配合 Element-UI 一起使用時,會有2個問題: ####(1)、頁面刷新后,通過按鈕切換的語言還原成了最初的語言,無法保存 ####(2)、框架內(nèi)部自帶的提示文字無法更改,比如像時間選擇框內(nèi)部中的提示文字

關(guān)于第一個問題,可以在初始化VueI18n實例時,通過 localStorage 來為 locale 對象賦值

在切換語言的時候可以緩存不同的語言選項,并且可以長期保存,不會因為刷新網(wǎng)頁而改變locale 的屬性值

const i18n = new VueI18n({ locale: localStorage.getItem('locale') || 'zh', messages })

關(guān)于第二個問題,更改Element 組件內(nèi)部語言,這里還涉及到 手動處理 vue-i18n@6.x 兼容性問題。 http://element-cn.eleme.io/#/... 官網(wǎng)已經(jīng)做了詳細(xì)介紹,這里依葫蘆畫瓢跟著實現(xiàn)一下

 ###i18n.js import Vue from 'vue' import VueI18n from 'vue-i18n' import locale from 'element-ui/lib/locale'; import zh from './langs/zh' import en from './langs/en' import enLocale from 'element-ui/lib/locale/lang/en' import zhLocale from 'element-ui/lib/locale/lang/zh-CN'Vue.use(VueI18n)const messages = { en: Object.assign(en, enLocale), zh: Object.assign(zh, zhLocale) }console.log(messages.zh)const i18n = new VueI18n({ locale: localStorage.getItem('locale') || 'zh', messages })locale.i18n((key, value) => i18n.t(key, value)) //為了實現(xiàn)element插件的多語言切換export default i18n

按照如上把國際化文件都整合到一起,避免main.js 中大段引入相關(guān)代碼。main.js 中與 i18n 相關(guān)的就只剩兩行代碼

###main.js import i18n from './i18n/i18n' // 1行window.app = new Vue({ el: '#app', router, store, i18n, // 2行 components: { App }, template: '' })

---------------------------源碼如下--------------------------------------

// 工程本地 國際化import locale_zh_CN from './lang/zh-CN'import locale_zh_TW from './lang/zh-TW'import locale_en_US from './lang/en-US'import locale_ko_KR from './lang/ko-KR'// ElementUI 國際化import element_locale from 'element-ui/lib/locale'import element_zh_CN from 'element-ui/lib/locale/lang/zh-CN'import element_zh_TW from 'element-ui/lib/locale/lang/zh-TW'import element_en_US from 'element-ui/lib/locale/lang/en'import element_ko_KR from 'element-ui/lib/locale/lang/ko'import Vue from 'vue'import VueI18n from 'vue-i18n'Vue.use(VueI18n)// 將各自的 國際化文件合并 拋出 (后期公共組件等插件的 國際化文件也需要考慮)const messages = {zh_CN: Object.assign(locale_zh_CN, element_zh_CN),zh_TW: Object.assign(locale_zh_TW, element_zh_TW),en_US: Object.assign(locale_en_US, element_en_US),ko_KR: Object.assign(locale_ko_KR, element_ko_KR)}// i18n插件默認(rèn)給中文const i18n = new VueI18n({locale: window.localStorage.getItem('WEBFRONT_LANG') || 'zh_CN',messages})// 為了實現(xiàn)element插件的多語言切換element_locale.i18n((key, value) => i18n.t(key, value))export default i18n            
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 沈阳市| 泸溪县| 天柱县| 东台市| 马山县| 祥云县| 恭城| 罗田县| 宁远县| 周口市| 通山县| 勃利县| 黑水县| 甘洛县| 乌拉特后旗| 任丘市| 新安县| 富民县| 微博| 安西县| 金坛市| 新龙县| 九龙县| 灵璧县| 洪湖市| 镶黄旗| 繁峙县| 温宿县| 雅安市| 江西省| 宝坻区| 无极县| 福建省| 夏河县| 湖南省| 新兴县| 扶风县| 竹北市| 台湾省| 彰化县| 平南县|