2017-07-26 6 views
0

Ich versuche, ein nicht-natives Ionic 2-Plugin namens Mapbox zu verwenden. Der Referenzstandort ist Telerik Mapbox und ich mache die folgenden Schritte:Wie verwende ich nicht-natives Mapbox-Plugin auf Ionic 2?

  1. ich installieren Sie es über das cordova Plugin hinzufügen ...
  2. Auf der Seite, wo ich die native Karte I an der Spitze machen möchten erklären deklarieren var cordova: any;
  3. aufrufen schließlich die Methode der Karte

    if (typeof cordova !== 'undefined') { 
        cordova.plugins.Mapbox.show(
        {...}) 
    }else{ 
        console.log("cordova is undefined"); 
    } 
    

Der Fehler zu zeigen, dass ist zurück:

Cannot read property 'show' of undefined

Ionic -> 3.5.2

Cordova -> 7.0.1

Wh y erkennt es seine Methode nicht?

EDIT

konnte ich die MapBox Plugin installieren, indem Sie den Repo heruntergeladen und auch ionic cordova plugin add /path/to/my/plugin/my.plugin.folder.here/ hinzufügen.

Jetzt ist das Problem immer das gleiche wie oben beschrieben. Wenn stattdessen erkläre ich global MapBox declare var Mapbox: any; und dann

if (typeof cordova !== 'undefined') { 
    Mapbox.show(
    {...}) 
}else{ 
console.log("cordova is undefined"); 
} 

die App abgestürzt nennen.

Antwort

0

Verwenden Sie window.plugins.PLUGIN_NAMe Zugriff nicht native/Corodva-Plugins.

import { Platform } from 'ionic-angular'; 

@Component({...}) 
export MyPage { 
    constructor(public plt: Platform) { 
    if (this.plt.is('cordova')) { 
     window.plugins.Mapbox.show(
     {...}) 
    } 
    } 
} 
+0

I hinzugefügt ** ( Fenster) **, aber immer noch nicht die Show-Methode erkennt es @SwapnilPatwa –

+0

'console.log (Fenster)' und prüfen, ob MapBox gibt es nicht in 'Plugins'. –

+0

Im Ordner plugins gibt es nicht. Ich habe nur das imagePicker-Objekt –

Verwandte Themen