Я установил пакет OneSignal на свое собственное приложение реагирования и хочу вставить уведомление в мое состояние, чтобы уведомление было доступно для класса.
Итак, я пытался сделать это до сих пор:
import OneSignal from "react-native-onesignal";
export default class SuperScreen extends Component {
constructor(props) {
super(props);
this.state = {
showPopup: false,
pushNotification: null
};
OneSignal.init("<mykey>", {kOSSettingsKeyAutoPrompt: true});
OneSignal.inFocusDisplaying(0);
OneSignal.addEventListener("opened", this.onOpened);
OneSignal.addEventListener("ids", this.onIds);
}
componentWillUnmount() {
OneSignal.removeEventListener("opened", this.onOpened);
}
onOpened(openResult) {
console.log("Message: ", openResult.notification.payload.body);
console.log("Data: ", openResult.notification.payload.additionalData);
console.log("isActive: ", openResult.notification.isAppInFocus);
console.log("openResult: ", openResult);
this.setState({ pushNotification: openResult});
}
Но я всегда получаю this.setState(...)
это не функция. Поэтому я добавил измененную строку к этому:
this.setState({ pushNotification: openResult}).bind(this);
Однако я все равно получаю тот же результат .. Я просто хочу обновить состояние. Ребята, можете ли вы объяснить мне, почему я получаю это сообщение об ошибке и как я могу это исправить?
С уважением и спасибо!