Skip to content

Commit 4537bcd

Browse files
authored
perf: 优化内容渲染时间 (#470)
1. 添加 preconnect 加快未来从给定源加载的速度。 3. 调整 rollupOptions 将依赖分离chunk以加快渲染速度,同时更加适合CDN缓存(即常用依赖未变更的情况下其chunk不会发生变化) ## 测试环境 Chrome `140.0.7339.185` Lighthouse Yarn `1.22.19` ## 修改前 <img width="608" height="65" alt="1" src="https://github.com/user-attachments/assets/d7febe55-7349-4179-beb1-d40307e78241" /> ## 修改后 <img width="679" height="80" alt="2" src="https://github.com/user-attachments/assets/3d1484c5-0edc-4932-ad4f-6e30fea98665" />
2 parents f6f013c + 71f93cb commit 4537bcd

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

index.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
<link rel="manifest" href="/site.webmanifest?v=1" />
2828
<link rel="mask-icon" href="/safari-pinned-tab.svg?v=1" color="#101010" />
2929
<link rel="shortcut icon" href="/favicon.ico?v=1" />
30+
<link rel="preconnect" href="https://cdnjs.cloudflare.com" />
3031
<meta name="msapplication-TileColor" content="#101010" />
3132
<meta name="theme-color" content="#101010" />
3233
</head>

vite.config.ts

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,36 @@ export default defineConfig(({ command, mode }) => {
2323
},
2424
build: {
2525
sourcemap: false,
26+
rollupOptions: {
27+
output: {
28+
manualChunks: {
29+
maacopilot: ['maa-copilot-client'],
30+
react: ["react", "react-dom", "react-router-dom"],
31+
reactplugins: ["react-use", "react-rating", "react-markdown", "react-ga-neo", "react-hook-form"],
32+
blueprint: ["@blueprintjs/core"],
33+
blueprintaddon: ["@blueprintjs/select", "@blueprintjs/popover2"],
34+
sentry: ["@sentry/react", "@sentry/tracing"],
35+
dnd: ["@dnd-kit/core", "@dnd-kit/sortable", "@dnd-kit/utilities"],
36+
jotai: ["jotai", "jotai-immer", "jotai-devtools", "immer"],
37+
remark: ["remark-gfm", "remark-breaks"],
38+
iconify: ["@iconify/react"],
39+
ajv: ["ajv", "ajv-i18n"],
40+
linkify: ['linkify-react', 'linkifyjs'],
41+
utils: [
42+
"lodash-es",
43+
"clsx",
44+
"dayjs",
45+
"fuse.js",
46+
"mitt",
47+
"swr",
48+
"swr/infinite",
49+
"camelcase-keys",
50+
"snakecase-keys",
51+
"zod"
52+
],
53+
},
54+
}
55+
}
2656
},
2757
}
2858
})

0 commit comments

Comments
 (0)