2025-04-30 01:43:23 +08:00
|
|
|
import {createSSRApp} from "vue";
|
|
|
|
|
import App from "./App.vue";
|
|
|
|
|
import * as Pinia from 'pinia'
|
|
|
|
|
import piniaPersist from 'pinia-plugin-persist-uni'
|
2025-08-05 20:31:37 +08:00
|
|
|
import {ISROUTERINTERCEPT, WHITELIST, ENABLE_VCONSOLE} from "@/config";
|
2025-04-30 01:43:23 +08:00
|
|
|
import routingIntercept from "@/utils/permission";
|
|
|
|
|
import uviewPlus from 'uview-plus'
|
|
|
|
|
|
|
|
|
|
//#ifdef H5
|
|
|
|
|
import VConsole from 'vconsole';
|
|
|
|
|
|
2025-08-05 20:31:37 +08:00
|
|
|
if (ENABLE_VCONSOLE || (window as any).log) {
|
2025-04-30 01:43:23 +08:00
|
|
|
new VConsole();
|
|
|
|
|
}
|
|
|
|
|
//#endif
|
|
|
|
|
|
|
|
|
|
const store = Pinia.createPinia()
|
|
|
|
|
|
|
|
|
|
export function createApp() {
|
|
|
|
|
const app = createSSRApp(App);
|
|
|
|
|
|
|
|
|
|
store.use(piniaPersist)
|
|
|
|
|
|
|
|
|
|
app.use(uviewPlus)
|
|
|
|
|
|
|
|
|
|
app.use(store)
|
|
|
|
|
|
|
|
|
|
// 对路由进行统一拦截,实现路由导航守卫 router.beforeEach 功能
|
|
|
|
|
if (ISROUTERINTERCEPT) {
|
|
|
|
|
routingIntercept(WHITELIST);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return {Pinia, app};
|
|
|
|
|
}
|
|
|
|
|
|