refactor: 优化代码结构,添加中文注释,完善 README 文档
- Hooks/组件添加 useMemo 优化,减少不必要的重计算 - 简化 TokenUsageDashboard 的 Suspense 嵌套层级 - 完善 README: 技术栈、构建产物位置、架构说明
This commit is contained in:
@@ -1,3 +1,14 @@
|
||||
/**
|
||||
* Vite 构建配置
|
||||
*
|
||||
* 集成 TanStack Start (SSR) + Nitro (服务端) + Tailwind CSS + React Compiler。
|
||||
*
|
||||
* 特性:
|
||||
* - Bun 运行时优化 (nitro preset: 'bun')
|
||||
* - 静态资源内联 (serveStatic: 'inline')
|
||||
* - React Compiler 自动优化 (无需手动 memo)
|
||||
* - 开发时热更新 (端口 3000)
|
||||
*/
|
||||
import tailwindcss from '@tailwindcss/vite'
|
||||
import { devtools as tanstackDevtools } from '@tanstack/devtools-vite'
|
||||
import { tanstackStart } from '@tanstack/react-start/plugin/vite'
|
||||
@@ -6,30 +17,52 @@ import { nitro } from 'nitro/vite'
|
||||
import { defineConfig } from 'vite'
|
||||
import tsconfigPaths from 'vite-tsconfig-paths'
|
||||
|
||||
/** 开发服务器端口 */
|
||||
const DEV_PORT = 3000
|
||||
|
||||
export default defineConfig({
|
||||
// 禁止清屏,方便与 Tauri 开发工具共用终端
|
||||
clearScreen: false,
|
||||
|
||||
build: {
|
||||
cssMinify: 'esbuild', // 使用 esbuild 替代 lightningcss 避免第三方 CSS 兼容性问题
|
||||
// 使用 esbuild 进行 CSS 压缩
|
||||
// 避免 lightningcss 处理第三方 CSS 时的兼容性问题
|
||||
cssMinify: 'esbuild',
|
||||
},
|
||||
|
||||
plugins: [
|
||||
// TanStack 开发工具
|
||||
tanstackDevtools(),
|
||||
|
||||
// Nitro 服务端框架 (Bun 运行时)
|
||||
nitro({
|
||||
preset: 'bun',
|
||||
serveStatic: 'inline',
|
||||
}),
|
||||
|
||||
// TypeScript 路径别名 (@/* -> src/*)
|
||||
tsconfigPaths(),
|
||||
|
||||
// Tailwind CSS v4
|
||||
tailwindcss(),
|
||||
|
||||
// TanStack Start SSR 框架
|
||||
tanstackStart(),
|
||||
|
||||
// React + Babel (启用 React Compiler)
|
||||
react({
|
||||
babel: {
|
||||
plugins: ['babel-plugin-react-compiler'],
|
||||
},
|
||||
}),
|
||||
],
|
||||
|
||||
server: {
|
||||
port: 3000,
|
||||
port: DEV_PORT,
|
||||
// 如果端口被占用则报错,而不是自动切换端口
|
||||
strictPort: true,
|
||||
watch: {
|
||||
// 忽略 Tauri 源码目录,避免不必要的重编译
|
||||
ignored: ['**/src-tauri/**'],
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user