import router from './router/index'
import {getUserInfo} from './api/login'
router.beforeEach((to,from,next)=>{
    //1.到本地获取token
    const token=localStorage.getItem("xdz-manager-token")
    if(!token) // 1.1没有获取到token
    {
        if(to.path!=='/login')// 1.1.1访问非登录页面,则让你回到登录页面
        {
            next({path:'/login'})
        }
        else{ // 1.1.2访问登录页面,则进入登录页面
            next()
        }
    }
    else// 1.2获取到token
    {
       // 1.2.1 访问的是登录页面,则进入登录页面
       if(to.path==='/login')
       {
           next()
       }
       else
       { //1.2.2 访问的是非登录页面,则查看本地是否存储有用户信息
        const userinfo=localStorage.getItem("xdz-manager-user")
        if(userinfo){ //1.2.2.1 本地有用户信息,则让其进入相应页面
            next()
        }
        else{//1.2.2.1 本地没有用户信息,则通过token去获取用户信息
            getUserInfo(token).then(response=>{
                const respUser=response.data
                if(respUser.flag){// 1.2.2.1.1获取到了用户信息,则把用户信息写入本地存储
                    localStorage.setItem("xdz-manager-user",JSON.stringify(response.data))
                    next()
                }
                else{// 1.2.2.1.2没有获取到用户信息,则转到登录页面
                    next({path:'/login'})
                }
            })
        }
       }
    }             
})
import { createApp } from 'vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import App from './App.vue'
import './registerServiceWorker'
import router from './router'
import './permission.js'

const app = createApp(App)

app.use(ElementPlus)
app.use(router)
app.mount('#app')