1
IはonReceived(通知){}、onOpened(OpenResultに){} Onesignalイベント内部使用時/ this.setState()関数エラーないthis.handleNotification()を取得してい私が作成しました。以下は私のコードです。 この問題の解決方法私は正しく実装されているかどうか?位反応ネイティブ - Onesignal実装
componentWillMount() {
OneSignal.addEventListener('received', this.onReceived);
OneSignal.addEventListener('opened', this.onOpened);
}
componentWillUnmount() {
OneSignal.removeEventListener('received', this.onReceived);
OneSignal.removeEventListener('opened', this.onOpened);
}
onOpened(openResult) {
try {
this.setState({ msgBody: openResult.notification.payload.body });
} catch (error) { }
}
onReceived(notification) {
OBJ.homeData.setNewMsgCount();
this.handleNotification('', '', '');
}
慎重に - 'bind'は、新しい関数を作成して返します。 'removeEventListener'に同じ参照を渡せるように、' addEventListener'に渡した関数参照を保持する必要があります。 'this.onReceived = this.onReceived.bind(this)' Then: 'OneSignal.addEventListener( 'received'、this.onReceived);' –