@types/googlemaps / index.d.ts' n'est pas un module

je veux utiliser L'API Google Maps avec mon projet angulaire, donc j'ai utilisé ces deux commandes pour installer les paquets npm:

npm install @agm/core --save-dev
npm install @types/googlemaps --save-dev

j'ai ajouté cette ligne dans mon composant:

import {} from "@types/googlemaps";

Mais je vois ces 2 erreurs dans VS Code:

[ts] File 'h:/Angular Projects/Breakfast/client/breakfast/node_modules/@types/googlemaps/index.d.ts' is not a module.
[ts] Cannot import type declaration files. Consider importing 'googlemaps' instead of '@types/googlemaps'.

j'ai ajouté ces lignes

"types": ["googlemaps"]
"moduleResolution": "node"

à tsconfig.json et tsconfig.specs.json, mais toujours pas de chance. Sur Chrome Dev Tools, je vois l'erreur suivante:

Error: Uncaught (in promise): TypeError: Cannot read property 'Autocomplete' of undefined
TypeError: Cannot read property 'Autocomplete' of undefined

version angulaire 6 Version Dactylographiée 2.9.2

j'ai essayé de L'Angle 5, aussi.

17
demandé sur TylerH 2018-06-28 16:54:07

2 réponses

merci à ce lien de documentation:https://www.typescriptlang.org/docs/handbook/triple-slash-directives.html

[Angulaire 6+] Vous n'avez qu'à ajouter cette ligne à la début de votre fichier dactylographié:

/// <reference types="@types/googlemaps" />

[Angular 5 -] vous n'avez qu'à ajouter cette ligne n'importe où dans votre fichier dactylographié importations:

import {} from "googlemaps";
30
répondu Cétia 2018-08-16 12:04:39

Changer votre importation comme suit:

import {} from "googlemaps";

Ajouter un fichier dans le répertoire racine de vos projets appelé index.d.ts et ajouter ce qui suit:

declare module 'googlemaps';
0
répondu Stephen Paul 2018-09-29 18:11:45