noUncheckedSideEffectImports
Los imports por efecto secundario también se comprueban
`import "./styles.css"` nunca se comprobaba que resolviera, así que una errata en uno era invisible.
- Desde
- TypeScript 5.6
- strict
- Fuera de strict
- En tu tsconfig
"noUncheckedSideEffectImports": true- Compilado con
"module": "esnext""moduleResolution": "bundler"
El mismo fragmento las dos veces. Solo cambió la opción.
Con ella apagada
"noUncheckedSideEffectImports": falseimport './styles.css' export const ok = 1
Compila limpio
Con ella encendida
"noUncheckedSideEffectImports": trueimport './styles.css' export const ok = 1
Emite TS2882
Por qué al compilador le importa
La exención existía porque estos imports suelen nombrar algo que el compilador no tiene por qué entender —una hoja de estilos, una imagen, un polyfill— y dar error en todos sería inútil. El coste era que un archivo renombrado o borrado tras un import por efecto secundario fallaba en ejecución, en la única forma de import sin enlace que atrape el fallo. La bandera activa la comprobación, y una declaración con comodín es como eximes los tipos de archivo que de verdad quieres saltarte.
Conclusión
Declara `*.css` una vez y la comprobación deja de ser ruido y empieza a servir.
Adónde ir después
22 opciones

