# 1. Vue 的 v-memo 与渲染优化 在 Vapor Mode 编译产物的现代取舍 A Vapor 模式下仍然依赖 v-memo 避免 diff B Vapor 编译产物按响应式依赖直接更新目标节点,天然获得 v-memo 的大部分收益 ✓ 正确答案 C v-memo 在 Vapor 下完全无意义 D Vapor 模式必须为每个列表手动声明 v-memo
# 2. Nuxt 3 的 Nitro 引擎与跨平台部署 与 React/Next.js 的协作与对比 A Nitro 无法提供 API 路由能力 B Nitro 只支持 Node.js 单平台部署 C Nitro 通过 preset 机制将同一应用部署到 Node/Bun/Deno/Workers 等平台,并支持混合渲染 ✓ 正确答案 D Nuxt 与 Next.js 使用完全相同的渲染模型
# 3. Nuxt 4 的目录约定与 Nitro 引擎的多部署目标 A Nuxt 4 要求所有代码放在根目录 B Nuxt 4 以 app/server/shared 划分目录,Nitro 通过 preset 生成各平台产物,runtimeConfig 保持部署无关 ✓ 正确答案 C Nitro 部署目标必须写在业务代码中 D 切换部署平台需要重写整个应用
# 4. Nuxt 的错误处理体系,error.vue 全屏错误页、createError/useError、Nitro 的 errorHandler 与 API 错误响应脱敏(生产环境不泄漏 error.data)如何协同? A useError 无法读取错误状态码 B 生产环境应把完整堆栈随错误响应返回给客户端 C error.vue 只在服务端渲染 D createError/useError 管理页面错误状态,error.vue 渲染错误页,Nitro errorHandler 规范化 API 错误,生产环境需脱敏 ✓ 正确答案
# 5. Nitro 的 defineEventHandler 与 H3 中间件生态 A H3 无法解析请求体 B Nitro 的 API 必须集中在一个文件中定义 C server/api 下每个文件是端点,defineEventHandler 处理请求,H3 中间件链提供鉴权/日志等横切能力 ✓ 正确答案 D Nitro 端点无法按 HTTP 方法分流
# 6. Nuxt 的 Server Routes 与 Server Middleware 在 API 网关层的角色 A Server Middleware 只能处理静态资源 B Server Routes 提供业务端点(BFF 聚合/代理),Server Middleware 做请求横切(鉴权/日志/CORS),二者协同构成业务网关 ✓ 正确答案 C Server Routes 无法访问下游服务 D 中间件在路由执行之后运行
# 7. Vue 的 SSR 流程与 Hydration Mismatch 排查 A mismatch 只会导致性能下降,不影响正确性 B 水合时客户端会丢弃服务端 HTML 重新渲染 C SSR 输出字符串、客户端水合绑定,mismatch 多源于两端渲染输入不一致(随机值、浏览器环境),需保证确定性 ✓ 正确答案 D 随机值内容在 SSR 下是安全的
# 8. Nuxt 3 useFetch/useAsyncData 缓存键与 SSR payload 在水合不一致的工程风险 A payload 可以安全携带函数与循环引用 B 客户端水合时总会重新请求数据 C key 只影响缓存,不影响水合 D useFetch 结果以 key 序列化进 payload 供水合复用,key 不稳定会导致双端数据不一致与重复请求 ✓ 正确答案
# 9. Nuxt 3 + Nitro 在部署目标(Node/Bun/Deno/Workers) A Nitro preset 为各平台生成适配产物,runtimeConfig 抽象环境差异,选型需权衡延迟、成本、运维与能力 ✓ 正确答案 B Nitro 只能部署到自建 Node 服务器 C Workers 平台支持全部 Node 文件系统能力 D 切换部署平台必须修改业务代码
# 10. Vue 3 的 watch/watchEffect 在 SSR 与客户端水合阶段的执行时机差异与序列化风险 A watchEffect 在服务端渲染时会立即执行所有副作用 B watch 在 SSR 阶段会像客户端一样反复触发 C watcher 中读取的函数类型状态可安全序列化 D SSR 阶段 watcher 不持续触发,客户端水合后才正常工作;参与渲染输出的状态需两端一致且可序列化 ✓ 正确答案
# 11. ref() vs reactive() 在 Vapor Mode 编译产物的现代取舍 A Vapor 模式不再支持 reactive B Vapor 下 ref 与 reactive 语义不变,模板绑定编译为细粒度依赖,现代实践倾向 ref 优先、reactive 用于对象整体 ✓ 正确答案 C ref 在 Vapor 下无法自动解包 D reactive 在 Vapor 下会失去深层响应
# 12. defineAsyncComponent 与代码分割 在 Vapor Mode 编译产物的现代取舍 A 异步组件无法配置加载与错误状态 B Vapor 模式禁用了异步组件 C 代码分割在 Vapor 下需要手写 chunk 管理 D defineAsyncComponent 与动态 import 代码分割在 Vapor 下机制不变,异步边界可作 VDOM 岛嵌入 ✓ 正确答案
# 13. Vue 组件单元测试(@vue/test-utils、Vitest、composables 测试)与 SSR 渲染测试的工程实践 A 组件用 @vue/test-utils 挂载交互,composables 可在 effectScope/测试组件宿主中调用,SSR 用 renderToString 断言输出 ✓ 正确答案 B composables 必须通过完整浏览器才能测试 C SSR 渲染测试需要真实服务器与网络 D @vue/test-utils 只能做快照测试
# 14. Nuxt 4 的数据获取与模块生态 A useFetch/useAsyncData 提供 SSR 数据获取与 payload 水合,API 层用 $fetch 封装 repository 并共享类型,生态能力经模块接入 ✓ 正确答案 B Nuxt 4 只能使用 $fetch 获取数据 C 模块无法扩展 Nuxt 的服务端能力 D 数据获取无需考虑 SSR 一致性
# 15. Suspense 与异步组件的协作 A Suspense 无法与 async setup 配合 B Suspense 会自动处理异步错误并渲染错误页 C fallback 会在每个异步依赖就绪时依次显示 D Suspense 聚合等待子树异步依赖后一次性切换,错误需 errorComponent 或错误边界兜底,嵌套 Suspense 各自独立 ✓ 正确答案
# 16. Nuxt Hybrid Rendering(route rules) A ISR 的缓存页面不会过期再生 B routeRules 只能配置全局一种渲染方式 C routeRules 按路径配置 ssr/spa/prerender/swr 等策略,实现同一应用内混合渲染与 ISR ✓ 正确答案 D prerender 与 ssr 规则无法共存
# 17. Reactivity Transform 与 Vue 3.5 alien-signals 的响应式工程价值 A alien-signals 要求改写所有 ref 为 $ref B Reactivity Transform 是未获推荐的语法糖,alien-signals 是 API 不变的运行时内核优化,现代实践用标准写法享受性能收益 ✓ 正确答案 C Reactivity Transform 已成为稳定 API D 两者作用完全相同
# 18. Vue Suspense 的 fallback 链路与错误边界协同 A 错误边界只能捕获同步错误 B Suspense 会捕获异步错误并自动降级 C 嵌套 Suspense 时外层先显示 fallback,内层再显示 D 嵌套 Suspense 各自等待并汇总,异步错误由 onErrorCaptured 错误边界捕获兜底,Suspense 本身不处理错误 ✓ 正确答案
# 19. Vue 2 到 Vue 3 迁移(breaking changes、迁移构建、兼容层 @vue/compat)的工程策略与常见陷阱 A 渐进迁移用 @vue/compat 兼容构建暴露不兼容点,逐步修复后关闭兼容;filters、$on/$off、全局 API 等均需改写 ✓ 正确答案 B Vue 3 完全兼容 Vue 2 全部 API,无需改动 C filters 在 Vue 3 中仍然可用 D Vue.use 在 Vue 3 中照常工作
# 20. Nuxt SEO(useHead/useSeoMeta、OG 标签与 SSR)在搜索引擎与社交分享中的工程实现 A useHead/useSeoMeta 在 SSR 输出完整 head(含 OG 标签),按数据动态生成 SEO 内容,配合 sitemap/JSON-LD 完善体系 ✓ 正确答案 B SEO meta 只能静态配置,无法按数据变化 C OG 标签只在客户端渲染后生效 D useSeoMeta 无法设置 canonical
# 21. SSR 序列化策略与 Pinia 的 state hydration 协作 A 敏感数据应随 payload 下发以保一致性 B 客户端水合时会重新请求并覆盖服务端状态 C 序列化会自动处理函数与循环引用 D 服务端把 pinia state 序列化注入 payload,客户端反序列化后接管,需保证可序列化、裁剪与双端一致 ✓ 正确答案
# 22. VueUse 工具集的核心 hooks 设计 A VueUse hooks 在服务端会访问 window 并崩溃 B VueUse hooks 封装状态与副作用并自动清理,SSR 安全(isClient 判断),参数支持响应式源与选项配置 ✓ 正确答案 C VueUse hooks 卸载时不清理监听 D VueUse hooks 只能接收普通值,无法接收响应式参数
# 23. Nuxt 3 definePageMeta 与中间件(middleware/) A 页面中间件先于全局中间件执行 B 中间件只能在客户端执行 C definePageMeta 无法关联命名中间件 D definePageMeta 声明布局/中间件/权限等元信息,middleware 按全局到页面顺序执行并用 navigateTo 控制跳转 ✓ 正确答案
# 24. Nuxt 的 useHead 与 Nitro security 模块,如何为 SSR 页面配置 CSP、安全响应头与文档级 meta,与 SEO 配置的边界? A 安全响应头与 SEO meta 属于同一配置层 B CSP 可以通过 useHead 在文档中设置 C useHead 管理文档 meta(SEO),CSP 与安全响应头由 Nitro 层配置,二者边界清晰且需配合内联资源策略 ✓ 正确答案 D CSP 配置无需考虑 SSR 内联脚本
# 25. Vue Router 4 动态路由与导航守卫在 SSR 的应用(onBeforeRouteUpdate 与数据预取) A 客户端水合前无需初始化路由匹配 B SSR 阶段 onBeforeRouteUpdate 会持续监听参数变化 C 服务端守卫不会执行 D SSR 用 memory history 一次性匹配渲染,组件内守卫主要服务客户端,onBeforeRouteUpdate 配合客户端数据预取并需与水合一致 ✓ 正确答案
# 26. Vapor 编译产物 在测试与 Vue Test Utils 的协作 A Vapor 组件没有 props/events 契约 B Vue Test Utils 完全无法测试 Vapor 组件 C 测试环境应与生产环境的 Vapor 开关无关 D Vapor 组件测试应断言 DOM 与交互等公开契约,避免依赖 VNode 内部结构的能力 ✓ 正确答案
# 27. Nuxt 的模块机制(nuxt.config.ts 的 modules 与 nuxtModule 定义)与 Nitro 插件生命周期的协作 A 模块经 nuxt.config 注册,用构建期 hooks 注入组件/路由/Nitro 插件,Nitro 插件在服务端运行期执行扩展 ✓ 正确答案 B 模块只能在运行时修改页面内容 C Nitro 插件无法由模块注册 D 模块机制与构建 hooks 无关