【问题标题】:DeviceEventEmitter.addListener Warning Cannot update during an existing state transitionDeviceEventEmitter.addListener 警告在现有状态转换期间无法更新
【发布时间】:2019-09-15 19:44:12
【问题描述】:

当我在下面添加设备发射器时,它会引发警告:

警告:在现有状态转换期间无法更新(例如 在render) 内。渲染方法应该是 props 的纯函数 和状态。

componentDidMount() {
    DeviceEventEmitter.addListener('showFloater', (e) => {
        this.setState({showFloater:true})
    });

    DeviceEventEmitter.addListener('hideFloater', (e) => {
        this.setState({showFloater:false})
    });
}

这里是构造函数sn-p:

this.state = {
        pan:new Animated.ValueXY(), 
        _value:{
            x: 0, 
            y: 0
        },
        showFloater: false
    };

知道为什么我会收到警告吗?删除 setState 并加载正常。

【问题讨论】:

    标签: react-native


    【解决方案1】:

    如果其他人遇到此问题,这已解决:

    this.listner = DeviceEventEmitter.addListener('showFloater', (e) => {
            this.setState({showFloater:e.val})
        });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-20
      • 2017-05-16
      • 2016-09-20
      • 1970-01-01
      • 2016-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多