【问题标题】:@ionic-native/printer is not working@ionic-native/printer 不工作
【发布时间】:2017-11-11 06:57:30
【问题描述】:

我已经使用@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();
  }
}

每当我点击打印按钮时,什么都没有发生!

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

非常感谢!

【问题讨论】:

    标签: android cordova ionic-framework printing ionic-native


    【解决方案1】:

    您似乎错过了安装 codrova 插件的步骤:

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

    离子原生包是上述插件的包装器。查看文档here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-10
      • 2018-12-07
      相关资源
      最近更新 更多