回报的承诺.拒绝离子页
Return Promise.reject in ionic page
我从组件内部调用一个服务方法,它返回给我一个Promise。我想做不同的事情基于承诺是解决还是拒绝。我是这样做的:
调用服务方法的函数
onAddProvider() {
this.userInteraction.addContact(data.email, 'bp').then(
successMessage => {
doSomething();
},
failureMessage => {
doSomethingElse();
});
}
服务方法
addContact(email: string, type: string) {
return new Promise((resolve, reject) => {
if (!email.match(patterns.email)) {
return Promise.reject('Bad email address');
}
let data = {
to: email,
from: this.dataStorage.data.id,
type: type,
date: new Date().getTime()
};
this.http.post(`${serverURL}action=sendAddRequest&token=${localStorage['token']}`, JSON.stringify(data))
.map((res: Response) => res.text())
.subscribe(response => {
resolve('Request sent');
});
});
}
我期待failureMessage
函数运行时承诺。返回reject,但是我在控制台中得到这个错误:
EXCEPTION: Error: Uncaught (in promise): Bad email address
Replace:
return Promise.reject('Bad email address');
return reject('Bad email address');
也可以拒绝抛出错误。
throw "Error";
相关文章:
- 简单的ES6承诺问题-交换解决和拒绝参数
- 按照承诺和柴一起测试拒绝
- 手动拒绝路由承诺;不起作用
- 蓝鸟承诺 - 嵌套与拒绝模式
- 我怎样才能让承诺拒绝测试
- “未捕获(在承诺中)”在获取“then”方法中调用拒绝函数时
- 在jQuery中,.state()如何确定一个承诺是挂起的、已解决的还是被拒绝的
- AngularJS决心承诺.如果承诺被拒绝,则重定向
- 在$http内解决/拒绝承诺是行不通的
- 什么时候兑现或拒绝承诺的方法
- 在自定义的Jasmine匹配器中解决和拒绝承诺
- AngularJS- catch $q.拒绝承诺.然后块
- Chrome 53不捕捉未处理的拒绝承诺
- 如何在NativeScript上拒绝承诺——Angular 2
- 使用Mocha和chai -as- committed测试被拒绝承诺的特定属性
- 拒绝承诺,当不知道父var
- 在外部回调中解决/拒绝承诺
- 我什么时候该拒绝承诺
- 有条件地解决或拒绝$q承诺,使用 Jasmine 进行单元测试
- 获取:拒绝承诺,如果状态不正常,则捕获错误