我在people.ts
中有以下代码:
export class People {
constructor(public navCtrl: NavController, private printer: Printer) {}
public Printyo(){
console.log("in the printyo method");
this.printer.isAvailable();
let options: PrintOptions = {
name: 'MyDocument',
printerId: 'GuestPrint_iLab',
duplex: true,
landscape: true,
grayscale: true
};
this.printer.print("yolo", options);
}
}
在people.html
中,我有:
<ion-card (click)="Printyo()">
<img src="assets/images/print.jpg"/>
<div class="card-title">Print</div>
</ion-card>
我正在尝试这样做,以便如果单击ion-card
,则会调用Printyo方法,并将字符串yolo
发送到打印机。在IOS模拟器中运行此命令时,收到以下输出:[app-scripts] [11:42:13] console.log: in the printyo method
,但未打印任何内容。没有错误。我很确定这是因为我没有正确设置printerId
选项,但是我不确定如何正确设置它。我尝试过转到http://localhost:631/printers
来查找打印机位置,但是对于该打印机,即使我知道已连接到打印机,但由于从该计算机进行打印没有问题,所以位置字段为空白。有什么想法吗?
答案 0 :(得分:0)
您是否检查了从Promise
返回的isAvailable
?这将指示您设备是否可以打印。一旦这是真的,那么您就可以继续打印了。另外,print
method仅在它是 URL 时接受string
,否则您将需要传递 HTMLElement 从其调用[innerHTML][2]
方法的em>。