我不知道为什么我无法访问onButtonPress函数! 我发出警告调试代码,但它从未进入函数会话。 我正在关注stephen grider的完整反应native和redux课程,但不知何故,这段代码对我不起作用。
<Button onPress={this.onButtonPress.bind(this)}>
Log in!
</Button>
onButtonPress() {
const { email, password } = this.state;
console.warn('Pressed');
firebase.auth().signInWithEmailAndPassword(email, password)
.catch(() => {
console.warn('new authentication');
firebase.auth().createUserWithEmailAndPassword(email, password)
.catc`enter code here`h(() => {
console.warn('error auth');
this.setState({ error: 'Authentication Failed.' });
});
});
}
答案 0 :(得分:1)
我前段时间做了同样的课程。您的按钮需要返回:
renderButton() {
//Show the loading spinner if loading is true
if (this.state.loading) {
return <Spinner size="small" />;
}
//Otherwise show the log in button
return (
<Button onPress={this.onButtonPress.bind(this)}>
Log in
</Button>
);
}
然后在jsx中调用renderButton。 如果这有帮助,请告诉我!