2017-03-16 29 views
0

In meinem Code ich bereits die MapBox-gl-js Bibliothek verwenden, um eine Karte zu erstellen, indem Sie diesen Import mit:importieren Javascript-Module von einem Dritten Bibliothek

let mapboxgl = require('mapbox-gl/dist/mapbox-gl.js') 

die gut arbeitet.

Nun möchte Ich mag die 'create' Funktion verwenden, die innerhalb MapBox-gl.js in seiner dom-Modul vorhanden ist: this one to be more precise.

Ich hatte gehofft, ich einfach diese nutzen könnten:

mapboxgl.dom.create(arguments) 

aber dann bekomme ich errormessage:

Kann ich die "create function" der Bibliothek verwenden und wenn ja, wie?

Antwort

1

Die Datei, die Sie eigentlich require -ing sind, ist die index.js file, die das dom-Symbol nicht exportiert, da dies ein internes Dienstprogramm von Mapbox ist. Sie können immer die Datei dom.js kopieren und bei Bedarf verwenden, aber mapbox stellt diese Datei nicht für Sie zur Verfügung.

EDIT:

Wenn Sie entschlossen sind, um die Datei zu verwenden, können Sie es direkt benötigen, obwohl es nicht ratsam ist, könnte da MapBox entscheiden, um die Funktion jeder Versions-Upgrade zu ändern oder zu entfernen. In meinem Fall habe ich das Paket über npm installiert, also habe ich es so benötigt let mbDom = require('mapbox-gl/src/util/dom');.

Während dies möglich ist, ist es bei weitem nicht ratsam.

+0

Großartig, danke. Könntest du vielleicht erklären, warum in dieser Geige https://jsbin.com/matayut/edit?js,console die Zeile '' 'mapboxgl.util.extend ausgegeben wird (defaultGeoPositionOptions, this.options && this.options.positionOptions || { }) '' 'funktioniert? Die Geige verwendet einen 'HTML-Import' der Bibliothek, aber ich würde trotzdem nicht erwarten, dass es funktioniert oder was ist anders als oben? – musicformellons

+0

'util' wird exportiert,' dom' ist nicht. 'mapboxgl.util' zieht aus der Datei' util/util.js', die das 'dom' Modul nicht freigibt. – Mobius

+0

Sie haben Recht. Beachten Sie, dass 'util' in den letzten Versionen nicht mehr exportiert wird. https://github.com/mapbox/mapbox-gl-js/issues/1408 –

Verwandte Themen