reactjs - Kan ikke finne modul 'date-fns-tz' eller de tilsvarende typedeklarasjonene
"Kan ikke finne modulen 'date-fns-tz' eller dens tilsvarende typedeklarasjoner."
Har noen hatt dette problemet før? Jeg har installert date-fns-pakken.
import { zonedTimeToUtc, utcToZonedTime } from 'date-fns-tz';Svar #1
Hei @kacper, prøvde du denne kommandoen-
npm i @types/date-fns-tz
eller
yard add @types/date-fns-tz
noen pakker har allerede definert sine biblioteker (@types/module-name) du kan også legge til dette, slik at du tillater TypeScript å sjekke typeerklæringer.
Men hovedsaken er at du først bør installere hovedbibliotekspakken, det vil si date-fns-tz.
Hvis du fortsatt har problemer, gi meg beskjed.
Svar #2
TLDR: oppdater til [email for å få de riktige typeeksportene.
Forklaring:
Jeg støtte på dette problemet da jeg flyttet et prosjekt over til ES-moduler. data-fns-tz inkluderte typer og ESM-eksporter fra og med 1.3.x, men hadde ESM-spesifikke stier, for eksempel data-fns-tz/esm/format.
Node.js og TypeScript henter nå riktig modul ved kjøring basert på type-egenskapen. Så hvis prosjektet ditt har "type": "module" i sin package.json, vil kjøretiden vite å hente ESM-filene basert på avhengighetenes pakkeksport.
data-fns-tz hadde separate imports for CommonJS og ESM, så typene ble ikke ført gjennom automatisk.
Her er den relevante PR-en som endrer eksportmønsteret i pakken slik at kjøretiden vil plukke opp de relevante filene basert på modulformatet som er satt i type.
Les mer om typefeltet her.
