lang.js 3.39 KB
Newer Older
lanbaoming's avatar
lanbaoming committed
1 2
import En from '@/static/lang/en.js'
import Zh from '@/static/lang/zh.js'
Smile's avatar
Smile committed
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
import Fr from '@/static/lang/fr.js'


// 定义一个对象来映射语言代码和对应的语言包
const languages = {
    'zh': Zh,
    'en': En,
    'fr': Fr
};
const languageData = {
    'zh': {
        label: 'label',
        title: 'titleZh',
        name: 'nameZh',
        guojiaName: 'guojiaName',
        shiName: 'shiName',
        startTitle: 'startTitleZh',
        destTitle: 'destTitleZh',
        attrName: 'attrName',
        content: 'contentZh',
        destCountryTitle: 'destCountryTitleZh',
        prodTitle: 'prodTitleZh',
        remarks: 'remarksZh',
        desc: 'descZh',
        coverImage: 'coverImageZh',
        activityDesc: 'activityDescZh',
29
        startAddress: 'startAddressZh',
30 31
        msgTitle:'title',
        msgContent:'content',
Smile's avatar
Smile committed
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
    },
    'en': {
        label: 'labelEn',
        title: 'titleEn',
        name: 'nameEn',
        guojiaName: 'guojiaNameEn',
        shiName: 'shiNameEn',
        startTitle: 'startTitleEn',
        destTitle: 'destTitleEn',
        attrName: 'attrNameEn',
        content: 'contentEn',
        destCountryTitle: 'destCountryTitleEn',
        prodTitle: 'prodTitleEn',
        remarks: 'remarksEn',
        desc: 'descEn',
        coverImage: 'coverImageEn',
        activityDesc: 'activityDescEn',
49
        startAddress: 'startAddressEn',
50 51
        msgTitle:'titleEn',
        msgContent:'contentEn',
Smile's avatar
Smile committed
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
    },
    'fr': {
        label: 'labelFr',
        title: 'titleFr',
        name: 'nameFr',
        guojiaName: 'guojiaNameFr',
        shiName: 'shiNameFr',
        startTitle: 'startTitleFr',
        destTitle: 'destTitleFr',
        attrName: 'attrNameFr',
        content: 'contentFr',
        destCountryTitle: 'destCountryTitleFr',
        prodTitle: 'prodTitleFr',
        remarks: 'remarksFr',
        desc: 'descFr',
        coverImage: 'coverImageFr',
        activityDesc: 'activityDescFr',
69
        startAddress: 'startAddressFr',
70 71
        msgTitle:'titleFr',
        msgContent:'contentFr',
Smile's avatar
Smile committed
72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
    }
};


function getAppLanguages(local = 'zh') {
    return languages[local] || languages['zh']; // 默认返回中文语言包
}

function getLanguageData(local = 'zh') {
    return {
        label: languageData[local].label,
        title: languageData[local].title,
        name: languageData[local].name,
        guojiaName: languageData[local].guojiaName,
        shiName: languageData[local].shiName,
        startTitle: languageData[local].startTitle,
        destTitle: languageData[local].destTitle,
        attrName: languageData[local].attrName,
        content: languageData[local].content,
        destCountryTitle: languageData[local].destCountryTitle,
        prodTitle: languageData[local].prodTitle,
        remarks: languageData[local].remarks,
        desc: languageData[local].desc,
        coverImage: languageData[local].coverImage,
96 97
        activityDesc: languageData[local].activityDesc,
        startAddress: languageData[local].startAddress,
98 99
        msgTitle: languageData[local].msgTitle,
        msgContent: languageData[local].msgContent,
Smile's avatar
Smile committed
100 101
    };
}
lanbaoming's avatar
lanbaoming committed
102 103

export default {
Smile's avatar
Smile committed
104 105 106
    lang: getAppLanguages(uni.getStorageSync("locale") || 'zh'),
    locale: uni.getStorageSync('locale') || 'zh',
    ...getLanguageData(uni.getStorageSync('locale') || 'zh'),
dragondean@qq.com's avatar
dragondean@qq.com committed
107
    setLang(msg) {
Smile's avatar
Smile committed
108 109 110 111
        this.lang = languages[msg] || languages['zh']; // 默认返回中文语言包
        this.locale = msg
    },

dragondean@qq.com's avatar
dragondean@qq.com committed
112
}
Smile's avatar
Smile committed
113