javascript - Visual Studio gjenkjenner ikke importert npm-pakke?


Når jeg importerer npm-pakker til prosjektet mitt i Visual Studio, forbløffer det meg alltid at noen ganger blir pakkene bare ikke gjenkjent uansett hvor mange ganger jeg oppdaterer mappene.

Mappen react-google-maps er definitivt i min node_modules-mappe. Men av en eller annen grunn kan ikke Visual Studio se denne feilen og markerer den som en feil. Og på grunn av dette vises ikke all relevant intellisense heller. Merkelig nok kan den faktisk gjenkjenne react!

Hva bør jeg gjøre for å få Visual Studio til å gjenkjenne nye pakker jeg nettopp har installert gjennom npm i konsollen, slik at jeg kan importere dem uten de markerte feilene?

Svar #1

Jeg tror problemet ditt er at react-google-maps er et JavaScript-modul. For å la TypeScript importere modulene, trenger du noen typings som oversetter JavaScript til TypeScript, for eksempel fra DefinitelyTyped-repositoriet.

Et raskt søk fant ingen slike typings, derfor antar jeg at du ikke har installert noen typings for dette.

Det finnes to løsninger, hvis dette er tilfellet.

  1. Skriv typene og legg dem inn i DefinitelyTyped eller Typings-registeret. Dette er min anbefalte tilnærming. Gi noe tilbake til fellesskapet ved å skrive typene og publisere dem for andre.
  2. Deklarer en modul i prosjektet ditt for å dempe importen. Denne gir deg ikke IntelliSense, så den demper bare importen.

For å deklarere modulen i prosjektet ditt, legg til en ny fil med navnet react-google-maps.d.ts og lim inn dette:

declare module "react-google-maps" {
    export var GoogleMap;
    export var Marker;
}

Relaterte artikler