27 lines
694 B
TypeScript
27 lines
694 B
TypeScript
|
|
import { createApp } from "vue";
|
|||
|
|
import { createPinia } from "pinia";
|
|||
|
|
import Antd from "ant-design-vue";
|
|||
|
|
import "ant-design-vue/dist/reset.css";
|
|||
|
|
import "./styles/global.scss";
|
|||
|
|
import App from "./App.vue";
|
|||
|
|
import router from "./router";
|
|||
|
|
import { useAuthStore } from "./stores/auth";
|
|||
|
|
import { setupPermissionDirective } from "./directives/permission";
|
|||
|
|
|
|||
|
|
const app = createApp(App);
|
|||
|
|
const pinia = createPinia();
|
|||
|
|
|
|||
|
|
app.use(pinia);
|
|||
|
|
app.use(router);
|
|||
|
|
app.use(Antd);
|
|||
|
|
|
|||
|
|
// 注册权限指令
|
|||
|
|
setupPermissionDirective(app);
|
|||
|
|
|
|||
|
|
// 应用启动时初始化认证状态
|
|||
|
|
// 如果有 token,自动获取用户信息
|
|||
|
|
const authStore = useAuthStore();
|
|||
|
|
authStore.initAuth().finally(() => {
|
|||
|
|
app.mount("#app");
|
|||
|
|
});
|