wake-up-neo.com

@ types/googlemaps/index.d.ts 'ist kein Modul

Ich möchte die Google Maps-API mit meinem Angular-Projekt verwenden. Daher habe ich die folgenden Befehle zum Installieren von npm-Paketen verwendet:

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

Ich habe diese Zeile zu meiner Komponente hinzugefügt:

import {} from "@types/googlemaps";

Aber ich sehe diese 2 Fehler in 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'.

Ich habe diese Zeilen hinzugefügt 

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

zu tsconfig.json und tsconfig.spec.json, aber immer noch kein Glück. In den Chrome Dev Tools wird die folgende Fehlermeldung angezeigt:

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

Angular Version 6 TypeScript Version 2.9.2

Ich habe es auch aus Angular 5 probiert.

37
AMendis

Dank dieses Dokumentationslinks: https://www.typescriptlang.org/docs/handbook/triple-slash-directives.html

[Angular 6+] Sie müssen diese Zeile nur am Beginn (dh Zeile 1, ohne vorheriges Zeichen) Ihrer TypeScript-Datei hinzufügen:

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

[Angular 5-] Sie müssen diese Zeile nur an jeder beliebigen Stelle Ihrer TypeScript-Datei hinzufügen:

import {} from "googlemaps";

Dank der Antwort unten müssen Sie möglicherweise auch eine Datei hinzufügen, die <root>/index.d.ts enthält (in meinem Fall jedoch nicht erforderlich):

declare module 'googlemaps';
73
Cétia

Ihr Import kann wie folgt vereinfacht werden: 

import {} from "googlemaps";

Fügen Sie im Stammverzeichnis des Projekts eine Datei mit dem Namen index.d.ts hinzu und fügen Sie Folgendes ein: 

declare module 'googlemaps';
16
Stephen Paul

Es funktioniert gut

npm install --save-dev @types/googlemaps
At the beggining of your component file, type:
/// <reference types="@types/googlemaps" />

Ich habe gerade eine index.d.ts in meinem src-Ordner erstellt und hinzugefügt

modul 'googlemaps' deklarieren;

Es hat das Problem gelöst

5
Cool Coder

In meinem angle 6+ -Projekt habe ich das Problem gelöst, das den googlemaps-Namespace oben in der TypeScript-Datei mit dieser Zeile deklariert:

/// <reference path="../../../../../../node_modules/@types/googlemaps/index.d.ts"/>

mit diesem Vorgang müssen Sie Googlemaps nicht auf andere Weise importieren, und dann funktioniert es. Verwenden Sie den richtigen Pfad zu Ihrem node_modules-Ordner.

Weitere Informationen und Hinweise zur Verwendung des Namespaces in TypeScript hier die Dokumentation .

Bei mir in Angular 6 hat es funktioniert, wenn ich nur verwendet habe 

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

In meinem Angular 7+ Projekt

$ npm install @types/googlemaps --save-dev
In tsconfig.app.json

"types": [
      "googlemaps"
]

Vielen Dank für den unten stehenden Link https://www.freakyjolly.com/angular-7-6-add-google-maps-in-angular-2-plus-applications-using-angular-google-maps-module -agm-core-leicht/# more-2316