@ionic-native/printer 不工作

@ionic-native/printer is not working

我已经使用@ionic-native/printer插件来实现账单报告的打印选项。

我已经使用这个命令行安装了插件:

    npm install --save @ionic-native/printer

然后在 viewbill.html 我放一行来激活打印机 :

    <button ion-button (click)="print()">
    <ion-icon name="print">
      </ion-icon>
      Print
    </button>

然后我的 viewbill.ts 代码:

import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams, Platform, AlertController } from 'ionic-angular';
import { Printer, PrintOptions } from '@ionic-native/printer';

@IonicPage()
@Component({
  selector: 'page-viewbill',
  templateUrl: 'viewbill.html',
})
export class ViewbillPage {

  public srNo = [];
  public particulars = [];
  public particularAmt = [];
  constructor(public navCtrl: NavController,
              public navParams: NavParams,
              public printer: Printer,
              public platform: Platform,
              public alertCtrl: AlertController) {
  }

  ionViewDidLoad() {
    console.log('ionViewDidLoad ViewbillPage');
    this.srNo = [
      {no: '1'},
      {no: '2'},
      {no: '3'}
    ];

    this.particulars = [
      {particular: 'Particular 1'},
      {particular: 'Particular 2'},
      {particular: 'Particular 3'}
    ];

    this.particularAmt = [
      {amount: '100'},
      {amount: '500'},
      {amount: '1000'}
    ];
  }

  print(){
    if(this.platform.is('cordova')){
      if(this.printer.isAvailable())
      {
        let options: PrintOptions = {
          name: 'Bill Report',
          duplex: true,
          landscape: true,
          grayscale: true
        };
        var page = document.getElementById('billReport');
        this.printer.print(page, options);
      }
      else{
        this.alert('Please connect your device to a printer!');
      }
    }
    else{
      this.alert('You are on a web browser!');
    }
  }

  alert(message: string) {
    this.alertCtrl.create({
      title: 'Info!',
      subTitle: message,
      buttons: ['OK']
    }).present();
  }
}

每当我点击打印按钮时,没有任何反应!

有没有人遇到过这种插件的问题?我做错什么了吗 ?我应该安装其他东西来解决问题吗?有没有人有运行良好的示例项目?

非常感谢!

你好像漏了安装codrova插件的步骤:

ionic cordova plugin add de.appplant.cordova.plugin.printer

ionic native package 是上述插件的包装器。检查文档 here