/vue-barcode-reader

A Vue.js set of components to scan barcodes and QR codes.

Primary LanguageVue

Vue Barcode and QR code scanner

npm version sponsored_by

A Vue.js set of components to scan (or upload images) barcodes and QR codes.

Benefits

  • Can scan both barcodes and QR codes
  • Uses ZXing ("zebra crossing"), an open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages.

Demo

Demo repository | Codesandbox | Vercel | Netlify

Or you can check the library in action on the website parceltrackingapp.com.

Installation

The easiest way to use Vue Barcode Reader is to install it from npm or yarn.

npm install vue-barcode-reader --save

Or

yarn add vue-barcode-reader

Vue 2.0 support

For Vue 2.0 compatible version please use the vue-barcode-reader@0.0.3.

TypeScript

There are type definitions available for those who work with TypeScript.

npm install @types/vue-barcode-reader --save-dev

Or

yarn add -D @types/vue-barcode-reader

Usage

The Vue Barcode Reader works out of the box by just including it.

Using Video Camera

Once a stream from the users camera is loaded, it's displayed and continuously scanned for barcodes. Results are indicated by the decode event.

import { StreamBarcodeReader } from "vue-barcode-reader";

In your template you can use this syntax:

<StreamBarcodeReader @decode="onDecode" @loaded="onLoaded"></StreamBarcodeReader>

Scanning from Image

The component renders to a simple file picker input element. Clicking opens a file dialog. On supporting mobile devices the camera is started to take a picture. The selected images are directly scanned and positive results are indicated by the decode event.

import { ImageBarcodeReader } from "vue-barcode-reader";

In your template you can use this syntax:

<ImageBarcodeReader @decode="onDecode" @error="onError"></ImageBarcodeReader>
methods: { onDecode (result) { console.log(result) } }

Events

The library emits the following events:

loaded

When the libraty is loaded and the camera is ready to scan

decode

When a barcode or QR code is scanned. The result is passed as a parameter to the event handler. The result is the text encoded in the barcode or QR code.

result

When a barcode or QR code is scanned. The result is passed as a parameter to the event handler. The result is the object with the following properties: