49 lines
1.1 KiB
JavaScript
49 lines
1.1 KiB
JavaScript
import { createSSRApp,provide,h } from "vue";
|
|
import App from "./App.vue";
|
|
import { createPinia } from 'pinia';
|
|
import { createI18n } from 'vue-i18n';
|
|
import zh from './locale/zh.json';
|
|
import en from './locale/en.json';
|
|
import ConfirmPopup from '@/components/comfirm-popup.vue'; // 全局统一的操作弹窗
|
|
import CustomHeader from "@/components/custom-header.vue";
|
|
import Tabs from "@/components/tabs.vue";
|
|
|
|
uni.$showTost = function (title='加载失败!',duration=1500,mask=false) {
|
|
// 变成异步代码,处理一些特殊页面 必须等待消息提示结束后在做操作
|
|
return new Promise((res,rej) => {
|
|
uni.showToast({
|
|
title,
|
|
mask,
|
|
icon:'none',
|
|
duration
|
|
})
|
|
setTimeout(() => {
|
|
res(true)
|
|
},duration)
|
|
})
|
|
}
|
|
|
|
const messages = {
|
|
en,
|
|
'zh-Hans': zh,
|
|
}
|
|
uni.setLocale('en')
|
|
let i18nConfig = {
|
|
locale: uni.getLocale(),// 获取已设置的语言
|
|
messages
|
|
}
|
|
|
|
const i18n = createI18n(i18nConfig)
|
|
|
|
export function createApp() {
|
|
const app = createSSRApp(App);
|
|
app.use(i18n)
|
|
app.use(createPinia());
|
|
app.component('ConfirmPopup', ConfirmPopup)
|
|
app.component('CustomHeader', CustomHeader)
|
|
app.component('Tabs', Tabs)
|
|
return {
|
|
app,
|
|
};
|
|
}
|