vitejs / vitejs/vite-plugin-react
avoid injecting duplicate css for client component during dev
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 1.2k
- Forks
- 269
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 19
Description
Can we do ssr-ed client component equivalent of https://github.com/vitejs/vite-plugin-react/pull/841? For this, Vite needs to support <link rel="stylesheet" ... /> as initial sheetsMap candidate https://github.com/vitejs/vite/blob/84079a84ad94de4c1ef4f1bdb2ab448ff2c01196/packages/vite/src/client/client.ts#L497-L507
Technically streamed ssr-ed client component can inject <link rel="stylesheet" /> later than csr-ed client component injecting <style ... />, but I guess we can leave that out such edge cases for starter.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the referenced Vite client.ts location around lines 497-507 and compare the approach in vite-plugin-react pull request 841. Trace how streamed SSR client components and CSR client components contribute stylesheet candidates during development; done means the SSR stylesheet link is handled as an initial sheetsMap candidate without duplicate CSS injection.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- css, react, typescript, vite
- Domain
- build-system, frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100