2016-09-06 6 views
6

Ich bin mit Ionic 2.Unhandle Versprechen Ablehnung: push.on ist keine Funktion

Ich erhalte diese Typescrpt Fehler wenn sie versuchen, Push-Benachrichtigungen einzurichten. Ich habe diesen Beispielcode aus einem Lernprogramm kopiert, also hätte ich erwartet, dass es funktioniert. Ich muss etwas falsch machen. Alle Ideen, bitte:

Unhandled Promise rejection: push.on is not a function ; Zone: angular ; Task: Promise.then ; Value: 
TypeError: push.on is not a function 


push.on('registration', function (data) { 

Typoskript

import { Push } from 'ionic-native'; 

. .

pushNotifications(): void { 

    var push = Push.init({ 
     android: { 
     vibrate: true, 
     sound: true, 
     senderID: "xxxxxxxxxxxxxxxxxxx" 
     }, 
     ios: { 
     alert: "true", 
     badge: true, 
     sound: 'false' 
     }, 
     windows: {} 
    }); 

    push.on('registration', (data) => { 
     console.log(data.registrationId); 
     alert(data.registrationId.toString()); 
    }); 
    push.on('notification', (data) => { 
     console.log(data); 
     alert("Hi, Am a push notification"); 
    }); 
    push.on('error', (e) => { 
     console.log(e.message); 
    }); 

    } 
+0

die folgenden mit dem gleichen Fehler versucht: 'push.on ('Registrierung', function (data) { console.log ('++++++++++++++++ ++++++ FIRE ON !! '); Alarm (Daten); }); ' – Richard

+0

Froh bin ich nicht der einzige. Hast du schon eine Lösung dafür? –

+0

Noch nicht. Ich bin inzwischen zu einer anderen Arbeit übergegangen, während ich versuche, es herauszufinden. – Richard

Antwort

0

Stellen Sie sicher, dass 'window.cordova' verfügbar ist, bevor Sie das Plugin verwenden. Testen Sie tatsächlich auf einem Gerät oder im Browser? Cordova ist im Browser nicht verfügbar.

BEARBEITEN Um sicherzustellen, dass Ihr Code-Editor weiß, was "window.cordova" ist, stellen Sie sicher, dass Sie CORDOVA-Typen installiert haben.

npm install typings -g 
typings install dt~cordova --save --global 
Verwandte Themen