用途:帮助 Claude 将 JavaScript 前端框架接入 Tauri v2 桌面应用开发。Tauri 作为静态 Web 宿主,通过原生 webview 提供 HTML、CSS、JS 与 WASM 文件,本身与前端框架无关,但需针对各框架做特定配置。
支持类型:静态站点生成(SSG)、单页应用(SPA)、多页应用(MPA)。不支持原生服务端渲染(SSR),所有框架必须配置为静态输出。核心原则:Tauri 无法运行 Node.js 服务器,内容须预构建为静态文件;应用与 API 之间采用客户端-服务器架构,不使用混合 SSR 方案;移动开发需在内部 IP 上托管前端的开发服务器。
tauri.conf.json 通用结构:build 下配置 beforeDevCommand、beforeBuildCommand、devUrl、frontendDist,包管理器可替换为 npm run、yarn、pnpm 或 deno task。
各框架要点:Vite(React、Vue、Svelte、Solid)推荐用于 SPA,输出 dist,端口 5173,需忽略 src-tauri 监听并设置 envPrefix。Next.js 须用 output: 'export',图片 unoptimized,开发时配置 assetPrefix,输出 out,端口 3000,动态路由需 generateStaticParams(),不支持 API 路由。Nuxt 须 ssr: false,用 nuxt generate 构建,输出 dist,端口 3000,server/api 不可用。SvelteKit 需安装 @sveltejs/adapter-static,设置 fallback: 'index.html',在 +layout.ts 中导出 ssr = false 与 prerender = true,输出 build,端口 5173。Qwik 需静态适配器,输出 dist,端口 5173,Qwik City 服务端函数不可用。
环境变量:TAURI_DEV_HOST(移动开发主机 IP)、TAURI_ENV_PLATFORM(目标平台)、TAURI_ENV_DEBUG(调试构建)。构建目标按平台 webview 能力设置,Windows 用 chrome105,其他用 safari13。移动开发需将 host 设为 0.0.0.0 或 TAURI_DEV_HOST,并以 npm run tauri ios dev 或 npm run tauri android dev 运行。
常见问题:开发时资源不加载需配置 assetPrefix;Tauri API 不可用多因代码在 SSG 构建期执行,应禁用预渲染、用 ssr: false 动态导入或检查 window.TAURI;热重载失效需在 watch 忽略列表加入 /src-tauri/;移动开发失败需让开发服务器可被网络访问;SSR 报错需确保各框架关闭 SSR。
限制:不支持 SSR 与 Node 服务器端能力,API 路由、服务端函数、Nitro 服务端功能均不可用,需改用 Tauri 命令;预渲染时 load 函数在构建期执行,无法访问 Tauri API。