2016-11-14 2 views
0

По умолчанию response-native-barcodescanner непрерывно считывает штрих-коды. Я бы хотел, чтобы он прочитал штрих-код, а затем остановился. Как мне это сделать?call-native-barcodescanner перестает читать коды после первого кода чтения

ZXing имеет возможность сделать это, How to stop continuous scanning by zxing-android-embedded in Android, но реакция-native-barcodescanner, похоже, не раскрывает эту функцию.

ответ

0

Используйте какой-то флаг.

constructor(props) { 
    super(props); 
    this.scanSuccess = false; 
    .... 
    } 

    barcodeReceived(e) { 
    if (this.scanSuccess) return; 
    console.log("bar code detected", JSON.stringify(e)); 
    this.scanSuccess = true; 
    ..... 
    } 

Также проверьте этот пример https://github.com/ideacreation/react-native-barcodescanner/blob/master/Examples/BarcodeScanner/index.android.js

+0

Это шкафчик для бедных людей, есть ли гарантия, что это потокобезопасный? – myxomatosis

0

Вы можете остановиться, как это. Этот код от here. Перейдите по ссылке, чтобы увидеть полный пример.

onBarCodeRead: function(e) { 
    this.setState({showCamera: false}); 
    AlertIOS.alert(
     "Barcode Found!", 
     "Type: " + e.type + "\nData: " + e.data 
    ); 
    }