import { createRouter, createWebHistory } from 'vue-router';
import store from '@/stores/counter';
import axios from 'axios';
// 公共
import common from './module/common';
// 直播大厅
import live from './module/live';
// 科技频道
import channel from './module/channel';
// 科技超市
import market from './module/market';
// 交流合作
import interflow from './module/interflow';
// 创新服务
import service from './module/service';
// 科学普及
import universal from './module/universal';
const router = createRouter({
  history: createWebHistory(import.meta.env.BASE_URL),
  routes: [
    {
      path: '/',
      meta: { title: '中科在线（长春）' },
      component: () => import('@/views/homeIndex.vue')
    },
    {
      path: '/homeIndex',
      meta: { title: '中科在线（长春）' },
      component: () => import('@common/src/components/web-frame/home.vue'),
      children: [
        // 直播大厅
        ...live,
        // 科技频道
        ...channel,
        // 科技超市
        ...market,
        // 交流合作
        ...interflow,
        // 创新服务
        ...service,
        // 科学普及
        ...universal
      ]
    },
    // 公共，跳出框架
    ...common
  ]
});
router.beforeEach(async (to, from, next) => {
  // 赋值标题
  document.title = `${to.meta.title}`;
  const token = localStorage.getItem('token');
  if (token) {
    const res = await axios.request({
      method: 'get',
      url: '/zkzx/v2/api/token/tokenView',
      responseType: 'json',
      headers: {
        token: token
      }
    });
    if (res.data.errcode == '0') {
      store.commit('setUser', res.data.data, { root: true });
    }
    next();
  } else next();
});

export default router;
