2017-02-01 60 views
0
  1. 第一 「NPM安裝--save @類型/ APN」
  2. 在app.component.ts

AppComponent如何使node-apn正確工作在angular2上?

import { Component } from '@angular/core'; 
import { NavController, NavParams, LoadingController } from 'ionic-angular'; 

//import apn from 'apn'; 
import * as apn from 'apn'; 

@Component({ 
    selector: 'page-a', 
    templateUrl: 'a.html' 
}) 
export class a { 
    constructor(public navCtrl: NavController, public navParams: NavParams) { 
     var options = { 
      token: { 
      key: "key.p8", 
      keyId: "1234567", 
      teamId: "987654" 
      }, 
      production: false 
     }; 

     var apnProvider = new apn.Provider(options); 

     var note = new apn.Notification(); 

     note.expiry = Math.floor(Date.now()/1000) + 3600; // Expires 1 hour from now. 
     note.badge = 3; 
     note.sound = "ping.aiff"; 
     note.alert = "\uD83D\uDCE7 \u2709 You have a new message"; 
     note.payload = { 'messageFrom': 'John Appleseed' }; 

     apnProvider.send(note, 'devicetoken').then((result) => { 
       // see documentation for an explanation of result 

     }); 
    } 
} 
  • 運行,那麼得到的錯誤:未捕獲的ReferenceError:無效的左手側分配
  • +0

    不是:

    npm install node-apn --save 

    您應該使用安裝分型:

    import * as apn from 'apn'; 

    您應該使用安裝apn與'apn'有關。你能給出哪裏出錯的行號?並且還可能發佈定的代碼 – PierreDuc

    +0

    上forge.js錯誤:52, 你可以參考這樣的畫面:[錯誤圖](http://i.imgur.com/cT9l8qh.png)。 – denny

    回答

    0

    幾件事情,你可以先發布整個班級嗎?因爲這段代碼很難理解。

    你應該改變你的import語句:

    你的錯誤似乎
    npm install --save-dev @types/apn 
    
    +0

    更改你要求的三個陳述,但不要改變結果。得到了同樣的錯誤:Uncaught ReferenceError:賦值中的左手邊無效。 對不起無法解釋清楚,我試着改變問題陳述,希望能展現全貌。 – denny