2017-03-02 4 views
0

Ich habe eine native App reagieren. In der App verwende ich einen Event-Listener, um einige Aktionen von nativen Modulen zu hören, was gut funktioniert.React Native: Alert-Nachricht funktioniert nicht, wenn häufig aufgerufen

Wenn der Ereignis-Listener das Ereignis erfasst, console.log ausgibt, ruft es eine andere Funktion auf, die wiederum console.log ausgibt, was alles funktioniert.

Wenn die Funktion jedoch auch eine Warnung anzeigt, wird sie zwar zum ersten Mal angezeigt, wird jedoch möglicherweise nicht angezeigt, wenn die Warnung mehrfach angezeigt wird.

Was könnte das Problem sein? Kann ich häufig eine Warnung anzeigen? Hier

ist der Quellcode:

class Details extends Component { 
    constructor(props){ 
    super(props); 
    } 


    componentDidMount(){ 
    DeviceEventEmitter.addListener('tagDetected', (data)=>{ 
     console.log(data.serial) 
     this.attendBySerial(data.serial) 
    }); 
    } 
    attendBySerial(i){ 
    console.log('Attending', i) 
    Alert.alert(
     'NFC Tag Detected', 
     JSON.stringify(i) 
    ); 
    } 

    render(){ 

    return(
     ///....... 
    ); 
    } 
} 

Antwort

1

Ich denke, eine Benachrichtigung über Aufruf und immer wieder kann unbeabsichtigte Folgen haben, wie dies technisch. Ich denke jedoch, dass Sie mit der Benutzererfahrung auf größere Probleme stoßen werden. Ich denke, dass es wahrscheinlich verärgert sein wird, wenn mehrere Alarme ausgelöst werden.

Unabhängig davon, ich denke, Sie sollten wahrscheinlich eine Warteschlange einrichten, um Ihre Warnungen zu verwalten, wie sie erfasst werden und sollten sie einzeln anzeigen. Sie können verwalten, wann sie angezeigt werden, indem Sie die nächste Warnung anzeigen, wenn die letzte Warnung geschlossen wird, wenn in der Warteschlange eine Warnung vorhanden ist.

Verwandte Themen