feat: 实现剧本创作与拆解前端工作台

This commit is contained in:
GouJ
2026-08-27 19:33:51 +08:00
parent edc003443f
commit 2ee6f049f6
56 changed files with 7597 additions and 2 deletions
+42
View File
@@ -0,0 +1,42 @@
import { createRouter, createWebHistory } from 'vue-router'
/** 按 graph 分路由,项目布局保留共享数据与长请求状态。 */
export const router = createRouter({
history: createWebHistory(import.meta.env.BASE_URL),
routes: [
{ path: '/', redirect: '/projects' },
{
path: '/projects',
component: () => import('../features/projects/ProjectsPage.vue'),
meta: { title: '我的剧本' }
},
{
path: '/projects/:projectId',
component: () => import('../features/projects/ProjectLayout.vue'),
redirect: to => `/projects/${String(to.params.projectId)}/create-drama`,
children: [
{
path: 'create-drama',
component: () => import('../features/create-drama/CreateDramaPage.vue'),
meta: { title: '剧本创作' }
},
{
path: 'breakdown',
component: () => import('../features/breakdown/BreakdownPage.vue'),
meta: { title: '剧本拆解' }
}
]
},
{
path: '/:pathMatch(.*)*',
component: () => import('../components/NotFoundPage.vue'),
meta: { title: '页面不存在' }
}
],
scrollBehavior: () => ({ top: 0 })
})
/** 路由切换同步浏览器标题,不依赖页面组件主动修改。 */
router.afterEach(to => {
document.title = `${String(to.meta.title || '工作空间')} · 短剧工作台`
})