A set of Vue.js components, allowing you to detect and decode QR codes, without leaving the browser.
QrcodeStream
accesses the device camera and continuously scans incoming frames.QrcodeDropZone
renders to an empty region where you can drag-and-drop images to be decoded.QrcodeCapture
is a classic file upload field, instantly scanning all files you select.All components are responsive. Beyond that, close to zero styling. Make them fit your layout. Usage is simple and straight forward:
<qrcode-stream @decode="onDecode"></qrcode-stream>
methods: {
onDecode (decodedString) {
// ...
}
}
Run
npm install vue-qrcode-reader
You can import the components independantly
import { QrcodeStream, QrcodeDropZone, QrcodeCapture } from 'vue-qrcode-reader'
const MyComponent = {
components: {
QrcodeStream,
QrcodeDropZone,
QrcodeCapture
},
// ...
))
or register all of them globally right away
import Vue from "vue";
import VueQrcodeReader from "vue-qrcode-reader";
Vue.use(VueQrcodeReader);
Include the following JS file:
https://unpkg.com/vue-qrcode-reader/dist/VueQrcodeReader.umd.min.js
Make sure to include it after Vue:
<script src="./vue.js"></script>
<script src="./VueQrcodeReader.umd.min.js"></script>
All components are automatically registered globally. Use kebab-case to reference them in your templates:
<qrcode-stream></qrcode-stream>
<qrcode-drop-zone></qrcode-drop-zone>
<qrcode-capture></qrcode-capture>
QrcodeStream
.init
event to investigate errors.Author: gruhn
Demo: https://gruhn.github.io/vue-qrcode-reader/
Source Code: https://github.com/gruhn/vue-qrcode-reader
#vue #vuejs #javascript