import LoginPrompt from './components/login-prompt.vue' import pinia from './stores/index.js' // #ifndef VUE3 import Vue from 'vue' import App from './App' import ElementPlus from 'element-plus' import 'element-plus/dist/index.css' import * as ElementPlusIconsVue from '@element-plus/icons-vue' Vue.component('LoginPrompt', LoginPrompt) Vue.config.productionTip = false App.mpType = 'app' const app = new Vue({ ...App, pinia }) app.use(ElementPlus) for (const [key, component] of Object.entries(ElementPlusIconsVue)) { app.component(key, component) } app.$mount() // #endif // #ifdef VUE3 import { createSSRApp } from 'vue' import App from './App.vue' import { createI18n } from 'vue-i18n' // 导入语言文件 import en from './static/language/en.js' import ms from './static/language/ms.js' import th from './static/language/th.js' import vi from './static/language/vi.js' import zh_CN from './static/language/zh_CN.js' import zh_HK from './static/language/zh_HK.js' function getCurrentLocale() { if (uni.getStorageSync('languageData') && uni.getStorageSync('languageData').code && uni .getStorageSync('languageData').code != 'undefined') { return uni.getStorageSync('languageData').code; } else { let language = uni.getSystemInfoSync().osLanguage; language = 'zh_CN' if (language.indexOf('th') != -1) { language = 'th' uni.setStorageSync('languageData', { code: language }) console.log(language); return language } else if (language.indexOf('vi') != -1) { language = 'vi' uni.setStorageSync('languageData', { code: language }) console.log(language); return language } else if (language.indexOf('zh') != -1) { if (language.indexOf('CN') != -1) { language = 'zh_CN' uni.setStorageSync('languageData', { code: language }) console.log(language); return language } else { language = 'zh_HK' uni.setStorageSync('languageData', { code: language }) console.log(language); return language } } else if (language.indexOf('en') != -1) { language = 'en' uni.setStorageSync('languageData', { code: language }) console.log(language); return language } else if (language.indexOf('ms') != -1) { language = 'ms' uni.setStorageSync('languageData', { code: language }) console.log(language); return language } else { language = 'en' uni.setStorageSync('languageData', { code: language }) console.log(language); return language } } } // 创建 i18n 实例 const i18n = createI18n({ locale: getCurrentLocale(), legacy: false, // 使用 Composition API 模式 globalInjection: true, // 全局注入 $t 函数 messages: { 'en': en, 'ms': ms, 'th': th, 'vi': vi, 'zh_CN': zh_CN, 'zh_HK': zh_HK } }) export function createApp() { const app = createSSRApp(App) app.component('LoginPrompt', LoginPrompt) app.use(pinia) app.use(i18n) return { app } } // #endif