我正在获取令牌,但无法将其设置为状态或调用任何功能从OnRegister方法
PushNotification.configure({
onRegister: function(token) {
alert(token.token) //works fine
//shows an error this setState is not a function
this.setState({token:token.token})
//shows an error this this.sendToken.. is not a function
this.sendTokenTOServer(token.token)
}
});
假设您具有这样的组件结构,
state = {}
configurePushNotifications() {
PushNotification.configure({ .... });
}
sendTokenTOServer() {}
由于要引用父类范围的方法,因此您需要分配this
,如下所示,然后使用它,因为OnRegister方法中的this
是指传递给PushNotification.configure()
函数的参数对象的范围。
configurePushNotifications = () => {
const that = this;
PushNotification.configure({
onRegister: function(token) {
alert(token.token)
that.setState({token:token.token})
that.sendTokenTOServer(token.token)
}
});
}