Listen for barcode scanner events in your Angular application
npm install angular-barcode-listener
var app = angular.module('app', ['barcodeListener']);
<barcode-listener
on-scan='ctrl.handleScan'
prefix='P%'
value-test='^C%'
finish-scan-on-match='true'
scan-duration='500'
></barcode-listener>
If you need to simulate scanning a barcode while developing and don't have a scanner handy you can paste the following code into a bookmark which will prompt you to enter some text that you want "scanned":
javascript:(function(){
var $document = window.angular.element(document).injector().get('$document');
var triggerKeypressEvent = function(char) {
var event = new Event('keypress');
event.which = char.charCodeAt(0);
$document.triggerHandler(event);
};
var barcode = prompt('Text to scan');
for (var i = 0; i < barcode.length; i++) {
triggerKeypressEvent(barcode[i]);
}
})();
Please follow our Code of Conduct when contributing to this project.
$ git clone https://github.com/goodeggs/angular-barcode-listener && cd angular-barcode-listener
$ yarn
$ yarn test
Module scaffold generated by generator-goodeggs-npm.