nativescript-barcodeview
farfromrefuge | v3.4.9
使用 NativeScript 应用扫描 QR 码/条形码。
npm i --save nativescript-barcodeview

NativeScript BarcodeView

支持的条形码类型

iOS 和 Android

  • CODE_39
  • CODE_93
  • CODE_128
  • DATA_MATRIX
  • EAN_8
  • EAN_13
  • ITF(也称为 ITF14)
  • PDF_417(仅在 Android 上通过 formats 显式传递时)
  • QR_CODE
  • UPC_A
  • UPC_E

仅限 Android

  • CODABAR
  • MAXICODE
  • RSS_14

仅限 iOS

  • AZTEC
  • CODE_39_MOD_43
  • INTERLEAVED_2_OF_5

关于 UPC_AEAN_13 的说明

当指定其中之一(或两者)时,都可以返回。您可以通过检查结果对象的 format 属性来检查实际类型。有关详细信息,请参阅 #176

安装

  • tns plugin add nativescript-barcodeview

在添加插件后,请务必运行新的构建以避免任何问题。


使用

nativescript BarcodeView 基于 [Eddy Verbruggen](https://github.com/EddyVerbruggen) 的 nativescript-barcodescanner

纯 NativeScript

重要:请确保在 Page 元素上包含 xmlns:mdc="nativescript-canvas"

XML

<Page xmlns:bc="nativescript-barcodeview">
<StackLayout horizontalAlignment="center">
<bc:BarcodeView width="100" height="100" scanResult="onScanResult"/>
</StackLayout>
</Page>

NativeScript + Angular

import { registerElement } from 'nativescript-angular/element-registry';
import { BarcodeView } from 'nativescript-barcodeview';
registerElement('BarcodeView', () => BarcodeView);
<BarcodeView width="100" height="100" (scanResult)="onScanResult($event)"></CanvasView>

NativeScript + Vue

import Vue from 'nativescript-vue';
(<any>Vue).registerElement('BarcodeView', () => require('nativescript-barcodeview').BarcodeView);
<BarcodeView  width="100" height="100"  @scanResult="onScanResult"/>

无论您使用什么 UI 框架,您都将接收到事件

function onScanResult(text:string, barcodeFormat:string) {

}

属性

  • formats
    要解码的格式的逗号分隔列表

  • preferFrontCamera
    是否优先使用前置摄像头

  • beepOnScan
    是否应该响铃?

  • reportDuplicates
    是否应该持续报告?

  • pause
    暂停摄像头

  • torchOn
    您猜对了?

方法

  • pauseScanning
  • resumeScanning

Android

ZXing: https://github.com/zxing/zxing/releases ZXing Android Embedded: https://github.com/journeyapps/zxing-android-embedded