React Native:频繁调用时警报消息不起作用

React Native: Alert message doesn't work when called frequently

我有一个反应本机应用程序。在应用程序中,我使用事件侦听器来侦听来自本机模块的一些操作,效果很好。

当事件侦听器捕获事件时,console.log输出,然后它调用另一个函数再次输出console.log,一切正常。

但是当该函数还显示一个警报时,它会在第一次显示,但如果显示该警报被多次调用,则可能不会显示。

可能是什么问题?我可以经常显示警报吗?

这是源代码:

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(
      ///.......
    );
  }
}

我认为从技术上讲,一遍又一遍地发出警报可能会产生意想不到的后果。但是,我认为您可能会在用户体验方面面临更大的问题。我认为它可能会收到多个警报,这会让用户感到恼火。

无论如何,我认为您应该设置一个队列来管理捕获的警报,并且应该一次显示一个。如果队列中存在警报,您可以通过在最后一个警报关闭时显示下一个警报来管理它们何时显示。