angular-barcode-listener

Angular directive to listen for barcode scanner events

Angular Core Dependency: ~1.2.14

Module License: MIT

Added by: Sam Deering

GitHub

Repository

goodeggs/angular-barcode-listener

Stats

Stars: 12

Watchers: 12

Forks: 3

Author

Good Eggs
Good Eggs

Module Description

Angular Barcode Listener

Listen for barcode scanner events in your Angular application

Build Status MIT License

Usage

Install from:

  • NPM: npm install angular-barcode-listener
  • Bower: bower install angular-barcode-listener
var app = angular.module('app', ['barcodeListener']);
<barcode-listener
  on-scan='ctrl.handleScan'
  prefix='P%'
  length='24'
  scan-duration='500'
></barcode-listener>

Configuration

  • prefix - expected prefix for scan inputs
  • length - expected length for scan inputs, not including prefix – optional - scans of different length will not be registered if this is provided
  • onScan - callback to call after successful scan
  • scanDuration - milliseconds duration for scan to complete (defaults to 50)

Bookmarklet

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]);
  }
})();

Contributing

Please follow our Code of Conduct when contributing to this project.

$ git clone https://github.com/goodeggs/angular-barcode-listener && cd angular-barcode-listener
$ npm install
$ npm test

Module scaffold generated by generator-goodeggs-npm.

Module stats last updated: 2017-05-19 15:00:08

Disclaimer: Some data on this page may have been gathered from the authors GitHub respository. If you see any mistakes or outdated information please let us know. Thanks!