solidjs / solidjs/solid-vite-plugin
jsx: 'preserve' in optimizeDeps breaks dependency scan when .tsx files use `import.meta.glob`
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 520
- Forks
- 70
- Ø Merge
- 23 Std. 35 Min.
- Gemergte PRs (30 T.)
- 39
Beschreibung
Describe
The vite:dep-scan:transform:js-glob plugin asserts that the return result is js. But the vite-plugin-solid plugin sets jsx: 'preserve'.
Reproduction
https://github.com/zhylmzr/vite-plugin-solid-bug
Workarounds
- move
import.meta.globto a singlejs/tsfile. - or change
transform.jsxto:
// vite.config.ts
plugins: [
{
name: 'fix-solid-deps-scan',
enforce: 'post',
config() {
return {
optimizeDeps: {
rolldownOptions: {
transform: {
jsx: {
importSource: 'solid-js/h',
},
},
},
},
}
},
},
]
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit dem Plugin vite:dep-scan:transform:js-glob in packages/vite/src/node/optimizer/scan.ts rund um die referenzierte Zeile und reproduziere dann den Fehler mit dem verlinkten Projekt vite-plugin-solid-bug. Verfolge, wie jsx: 'preserve' sich auf .tsx-Dateien auswirkt, die import.meta.glob verwenden. Fertig ist die Arbeit, wenn die Abhängigkeitsanalyse für diesen Fall erfolgreich ist, ohne dass einer der beiden aufgeführten Workarounds erforderlich ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- typescript, vite
- Bereich
- build-system, frontend
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Aktiv
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 72/100