import { createWebHistory, createRouter } from 'vue-router'
// 导入视图组件
import ArticleList from '../views/aericlelist.vue'
import HomePage from '../views/home.vue'
import NonsensePage from '../views/nonsense.vue'
import MessageBoardPage from '../views/messageboard.vue'
import AboutMePage from '../views/aboutme.vue'
import ArticleContentPage from '../views/articlecontents.vue'
import LoginPage from '../views/login.vue'
import ArticleSavePage from '../views/articlesave.vue'

/**
 * 路由配置数组
 * 定义了应用的所有路由路径和对应的组件
 */
const routes = [
  {
    path: '/',
    redirect: '/home' // 默认跳转到首页，显示所有文章
  },
  {
    path: '/home',
    name: 'home',
    component: HomePage,
    meta: { title: '首页' },
    children: [
      {
        path: 'aericletype',
        name: 'homeByType',
        component: HomePage
      },
      {
        path: 'aericletitle',
        name: 'homeByTitle',
        component: HomePage
      },
      {
        path: 'aericlestatus',
        name: 'homeByStatus',
        component: HomePage
      }
      
    ]
  },
  {
    path: '/articlelist',
    name: 'articleList',
    component: ArticleList,
    meta: {
      title: '文章目录'
    }
  },
  {
    path: '/nonsense',
    name: 'nonsense',
    component: NonsensePage,
    meta: {
      title: '随笔'
    }
  },
  {
    path: '/message',
    name: 'messageBoard',
    component: MessageBoardPage,
    meta: {
      title: '留言板'
    }
  },
  {
    path: '/about',
    name: 'aboutMe',
    component: AboutMePage,
    meta: {
      title: '关于我'
    }
  },
  {
    path: '/article',
    name: 'articleContent',
    component: ArticleContentPage,
    meta: {
      title: '文章详情'
    }
  },
  {
    path: '/login',
    name: 'login',
    component: LoginPage,
    meta: {
      title: '登录'
    }
  },
  {
    path: '/articlesave',
    name: 'articlesave',
    component: ArticleSavePage,
    meta: {
      title: '保存文章'
    }
  }
]

/**
 * 创建路由实例
 */
const router = createRouter({
  history: createWebHistory(),
  routes,
  scrollBehavior() {
    // 路由切换时滚动到页面顶部
    return { top: 0 }
  }
})

/**
 * 全局路由守卫 - 处理页面标题
 */
router.beforeEach((to, from, next) => {
  if (to.meta.title) {
    document.title = to.meta.title + ' - 个人博客'
  } else {
    document.title = '个人博客'
  }
  next()
})

export default router;