使用Angular2扫描条形码

时间:2016-02-09 14:48:51

标签: typescript angular barcode-scanner

我想在asp.net 5 / Angular2中开发一个应用程序,我在扫描条形码方面遇到了问题。

我的组件使用typeScript:

response.xpath('//*[@id="textepresentation"]//p/text()').extract_first()

和我的html模板(scan.html):

@Component({
    selector: 'barcode-scanner',
    templateUrl: 'app/scan.html',
    directives: [ROUTER_DIRECTIVES]
})
export class ScanComponent implements OnInit {
    barcode: string;

    constructor() {}
    ngOnInit() { }

    onKey(event: any) {
        this.barcode = event.target.value;
    }
}

它正在工作,但只有当输入显示在屏幕上并且聚焦时才会工作。 有没有办法用隐藏的输入做到这一点? (我已经尝试过<barcode-scanner> <div class="container"> <header><h1>My App title</h1></header> <div class="row"> <input type="text" (keyup)="onKey($event)" autofocus /> <p>barcode: {{ barcode }}</p> </div> </div> </barcode-scanner> ,还有一个input type="hidden"具有input type="text"样式的属性,但在这两种情况下它都没有用。

此外,是否可以在文档中捕获display:none事件?而不是在指定的输入上?

1 个答案:

答案 0 :(得分:1)

您可以通过将事件目标添加为前缀target:event来侦听全局事件。 target可以是windowdocumentbody

(window:keypress)="doSomething($event)"