javascript - 如何解决承诺?
问题描述
我使用本机反应开发应用程序,并在backend.js:32 Possible Unhandled Promise Rejection (id: 0):
出现错误时在控制台中发出警告。
我有 2 个组件。这是来自父组件Sms-Registration.js的代码片段
signInWithPhoneNumber = (phone) => {
return new Promise((resolve, reject) => {
return (
// this function authenticate user in firebase
auth()
.signInWithPhoneNumber(phone)
.then((confirmResult) => {
this.setState({
formSubmitted: false,
});
this.getSignInResult(confirmResult, phone);
return resolve();
})
.catch((error) => {
throw error;
})
);
});
};
render() {
return (
<PhoneNumber
signInWithPhoneNumber={this.signInWithPhoneNumber}
/>
);
}
这是PhoneNumber.js代码片段
signInWithPhoneNumber = () => {
this.props
.signInWithPhoneNumber(
`${this.state.countryObj.dial_code}${this.state.phoneNumber}`,
)
.then((result) => console.log('new result', result))
.catch((error) => console.log('new error', error));
};
有人可以帮我解决这个承诺吗?
解决方案
您需要处理拒绝,这意味着您必须在您的 catch 块中调用 reject() ,如果一切顺利,您必须以调用 resolve 的相同方式调用
推荐阅读
- wordpress - PhpUnit Wordpress 错误 install-wp-tests.sh
- python - 如何将 csv 数据转换为条形图?
- c - 为什么我的验证允许我在字符后输入数字?
- python - 用列表值对 dict 进行排序的最 Pythonic 方法是什么?
- mongodb - 具有事务配置的 Spring Boot Auto Increment 序列
- image - gulp-file-include 损坏图像文件
- angular - 从 Angular 调用 Web 组件函数
- flutter - 如何在颤动中创建一个圆形行?
- c# - 将 ViewModel 的属性绑定到 UserControl 的子控件和自身的 DependencyProperty
- python - 在python中更改json文件中的特定元素