import Vue from "vue" import VueI18n from 'vue-i18n' import ElementUI from "element-ui" // element 多语言文件 import locale from 'element-ui/lib/locale' import enLocale from 'element-ui/lib/locale/lang/en' import zhLocale from 'element-ui/lib/locale/lang/zh-CN' // 自己的多语言文件 import zh from "./zh" import en from "./en" Vue.use(VueI18n) Vue.use(ElementUI, { zhLocale }); // InitLanguage 将用户选择的语言存储到localStorage里 function InitLanguage() { return (localStorage.getItem("browserLanguage") == null || localStorage.getItem("browserLanguage") == undefined) ? 'zh-CN' : localStorage.getItem("browserLanguage"); } const messages = { "zh-CN": { ...zh, ...zhLocale, }, "en": { ...en, ...enLocale, } }; const i18n = new VueI18n({ legacy: false, messages, globalInjection: true, // 全局生效$t fallbackLocale: "zh-CN", // 匹配不到时默认的语言 silentTranslationWarn: true, // 控制台的warning locale: InitLanguage(), }) locale.i18n((key, value) => i18n.t(key, value)) export default i18n