【发布时间】:2016-03-25 10:47:58
【问题描述】:
使用只有.catch 部分但根本没有.then 的promise 有什么缺点吗?
我问的是不需要解析结果,只需要错误处理的情况。
仅依赖.catch 并跳过.then 这是一个很好的模式吗?
还是取决于它是哪个承诺实现?
【问题讨论】:
标签: promise
使用只有.catch 部分但根本没有.then 的promise 有什么缺点吗?
我问的是不需要解析结果,只需要错误处理的情况。
仅依赖.catch 并跳过.then 这是一个很好的模式吗?
还是取决于它是哪个承诺实现?
【问题讨论】:
标签: promise
从概念上讲,只有错误处理程序并且在成功完成后无事可做的操作没有任何问题。如果这就是它所需要的,那很好。例如,假设您正在使用来自客户端的一些新数据更新服务器。如果数据成功发送到服务器,则无需执行任何其他操作,因为操作已完成,但如果出现错误,则可能需要执行其他操作(重试,通知用户,根据错误代码更正数据等...)。
要评论这是否是设计特定代码的正确方法,我们必须查看实际代码并了解它在做什么,然后就这是否是构建特定代码的最佳方式形成意见。
如果我正在设计一个通用功能,我当然会同时提供完成(解决承诺)和错误(拒绝承诺),以便调用者可以挂接到其中任何一个。但真正取决于调用者他们想知道哪些事件,如果只有错误很重要,那么只需 .catch() 就可以了。
【讨论】: