用途:将 Vue 单文件组件(.vue)、Nuxt 页面与布局迁移到 Next.js App Router,并处理 Pinia/Vuex 状态、Vue Router 配置、SSR 与数据获取、Vue 生态包的对应替换。不适合从零新建 React/Next.js 项目、React 框架间互转、React 转 Vue,以及与迁移无关的一般 React/Next.js 问题。
主要能力:提供模板指令到 JSX 的映射(如 v-if、v-for、v-model、@click 修饰符、v-html、slot、Teleport);响应式到 Hooks 的映射(ref→useState、reactive→useState 对象、computed→渲染期派生或 useMemo、watch→useEffect、onMounted/onUnmounted→useEffect 与清理函数、provide/inject→createContext/useContext、$emit→回调 prop);Pinia→Zustand、Vue Router→App Router 目录结构与 middleware.ts、Nuxt 数据获取→服务端组件 fetch 或 TanStack Query、组合式函数→自定义 Hook 的对应关系。
使用方式:先读取 Vue 源码识别响应式、状态、路由、插槽与 emits;再决定服务端或客户端组件,将 template 转 JSX、script setup 转函数体与 hooks、style scoped 转 CSS Module;emits 转回调 props,具名插槽转 props。按任务加载对应 references 文档,如 component-mapping.md、state-management.md、routing-conversion.md、ssr-data-fetching.md 等;需求不明确时默认只做单组件转换。
关键规则:保持公开 API(props、events、slots、DOM 输出)一致而非照搬语法;状态必须不可变更新,用 spread、map、filter 生成新引用;useEffect/useMemo/useCallback 必须显式列出依赖;按需使用 'use client',尽量下沉到最小交互叶子组件;v-for 使用稳定唯一 key,避免索引 key。
限制:未提供安装命令、定价或平台信息;具体命令与发布方式暂未提供。