i18n國際化

1:起步

1: 安裝i18n依賴,npm install i18n --save-dev梨熙。
2: 也可以直接去下載 i18n的依賴js开镣,我這直接下載好了,直接拿去用 vue-i18n.js 提取碼: 8bjs

2:在根目錄下咽扇,跟components同級邪财,新建文件夾舅列,i18n。

3: 在剛新建的 i18n 文件夾下卧蜓,新建 lang 文件夾(也可以不用新建,看個人)把敞。

1: lang文件夾存放我們的語言包弥奸。
2: index.js 是對我們的語言包做處理。
3: vue-i18n.js 剛上面也有提奋早,如果你通過npm install 安裝了依賴盛霎,那么就不需要了。

4: index.js 處理我們的語言包

import Vue from 'vue';
import LangEn from './lang/en.js';
import LangCn from './lang/zh.js';
import VueI18n from './vue-i18n.js'(沒有通過npm) 或 import VueI18n from 'vue-i18n' (通過npm)
Vue.use(VueI18n);

// 去保存好的值
const system_key = uni.getStorageSync('system_key');
if(!system_key){
    // 獲取設(shè)備信息
    uni.getSystemInfo({
        success: function(res) {
            console.log(res)
            uni.setStorageSync('system_key',res);
        }
    })
}

// 判斷獲取后的值是什么語言
let lang_cur = '';
switch(lang_cur){
      case 'zh':
            lang_cur = 'zh'
      break;
      case 'en':
            lang_cur = 'en'
      break;
}
// 實(shí)例化VueI18n對象
const i18n = new VueI18n({
    // 默認(rèn)語言
    locale: lang_cur || 'en',
    //  兩種方式
    messages: {
        'en': require('./lang/en.js'),
        'zh': require('./lang/zh.js')
    }耽装,
    messages: {
        'en': LangEn,
        'zh': LangCn 
    }
})

// 拋出去
export default i18n

5: 處理完之后愤炸,將index.js掛載到全局,也就是main.js中掉奄。

/**
 * @note internationalization 國際化
 * */
import i18n from './i18n/index.js';
Vue.prototype._i18n = i18n

App.mpType = 'app'
// 引入倉庫全局掛載
Vue.prototype.$store = store
const app = new Vue({
    i18n,
    store,
    ...App
})
app.$mount()

6: 在頁面中使用规个,以及在設(shè)置頁面切換不同的語言。

<template>
    <view>
        <tui-list-cell :hover="false" unlined :arrow="true" padding="30rpx 32rpx" :lineLeft="false" @tap="langClick">
            <view class="tui-item-box">
                <view class="tui-list-cell_name">{{$t('langChinese.lang')}}</view>
                <view class="tui-right">{{ lang | filer() }}</view>
            </view>
        </tui-list-cell>
        <!-- 語言篩選 -->
        <tui-picker
            :show="showActionSheetList" 
            :cancelText="$t('langChinese.cancel')" 
            :confirmText="$t('langChinese.confirm')" 
            :pickerData="languagePack" 
            :value="pickerValue"
            @hide="hide" 
            @change="changePicker">
        </tui-picker>
    </view>
</template>
<script>
    export default {
        data(){
            return {
                 name: this.$t('langChinese.cancel'),
                 lang: '',
                 showActionSheetList: false,
                 languagePack: [],
                 pickerValue: []
            }
        },
        onLoad() {
            // 進(jìn)入頁面獲取語言包
            const system_key = uni.getStorageSync('system_key');
            this.lang = system_key.language;
        },
        filters:{
            filer(e){
                let nameLang = '';
                e == 'en' ? nameLang = 'English' : nameLang = '中文';
                return nameLang
            }
        },
        changePicker(e){
            // 獲取緩存中的語言
            const system_key = uni.getStorageSync('system_key');
            // 通過switch 遍歷
            switch (e.value) {
                case 0:
                    system_key.language = this._i18n.locale = 'en'
                    break;
                case 1: 
                    system_key.language = this._i18n.locale = 'zh'
                    break;
            }
            this.lang = system_key.language;
            uni.setStorageSync('system_key',system_key);
            uni.switchTab({
                url: "../../tabbar/index/index"
            });
            // title 動態(tài)渲染
            uni.setNavigationBarTitle({
                title: this.$t('langChinese.set')
            });
        },
        hide(){
            this.showActionSheetList = false;
        },
    }
</script>

7: 小結(jié)

1: 以上內(nèi)容就是有國際化需求提供參考姓建,
2: 如果大家有好的方式诞仓,方法,都可以討論速兔,
3: 希望能對你有幫助墅拭,

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市涣狗,隨后出現(xiàn)的幾起案子谍婉,更是在濱河造成了極大的恐慌,老刑警劉巖镀钓,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件穗熬,死亡現(xiàn)場離奇詭異,居然都是意外死亡掸宛,警方通過查閱死者的電腦和手機(jī)死陆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來唧瘾,“玉大人措译,你說我怎么就攤上這事∈涡颍” “怎么了领虹?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長求豫。 經(jīng)常有香客問我塌衰,道長诉稍,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任最疆,我火速辦了婚禮杯巨,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘努酸。我一直安慰自己服爷,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布获诈。 她就那樣靜靜地躺著仍源,像睡著了一般。 火紅的嫁衣襯著肌膚如雪舔涎。 梳的紋絲不亂的頭發(fā)上笼踩,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天,我揣著相機(jī)與錄音亡嫌,去河邊找鬼嚎于。 笑死,一個胖子當(dāng)著我的面吹牛挟冠,可吹牛的內(nèi)容都是我干的匾旭。 我是一名探鬼主播,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼圃郊,長吁一口氣:“原來是場噩夢啊……” “哼价涝!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起持舆,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤色瘩,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后逸寓,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體居兆,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年竹伸,在試婚紗的時候發(fā)現(xiàn)自己被綠了泥栖。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,115評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡勋篓,死狀恐怖吧享,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情譬嚣,我是刑警寧澤钢颂,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站拜银,受9級特大地震影響殊鞭,放射性物質(zhì)發(fā)生泄漏遭垛。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一操灿、第九天 我趴在偏房一處隱蔽的房頂上張望锯仪。 院中可真熱鬧,春花似錦趾盐、人聲如沸卵酪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至溢豆,卻和暖如春蜒简,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背漩仙。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工搓茬, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人队他。 一個月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓卷仑,卻偏偏與公主長得像,于是被迫代替她去往敵國和親麸折。 傳聞我的和親對象是個殘疾皇子锡凝,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 如果你有一個項(xiàng)目,需要做出中文和英文兩個甚至更多語言支持垢啼,或者需要在簡體中文和繁體中文之間切換窜锯,那么你一定不想讓瀏...
    楠楠_c811閱讀 524評論 0 0
  • vue中如何使用i18n實(shí)現(xiàn)國際化 一、前言 項(xiàng)目中需要實(shí)現(xiàn)多語言切換芭析,這時候接觸到國際化锚扎,前端框架無數(shù),其中幾種...
    張先覺閱讀 1,402評論 1 12
  • 上來就干貨馁启! 安裝i18n 項(xiàng)目中創(chuàng)建i18n文件夾分別存放 index.js驾孔、zh.js、en.js index...
    張曉暢閱讀 274評論 0 0
  • 最近在做的一個網(wǎng)站需要加上一個英文版(看過之前文章的會知道)惯疙,點(diǎn)擊按鈕切換中文/英文翠勉,在這里記錄下實(shí)現(xiàn)過程。 需求...
    web30閱讀 2,381評論 6 4
  • 最近做了一個i18n國際化配置下面是詳細(xì)過程: 下載i18n 創(chuàng)建i18n文件夾image.png 創(chuàng)建翻譯的文本...
    李小白呀閱讀 662評論 0 0