状态变更封装
将状态变更逻辑封装为私有方法 #setState,resolve 和 reject 统一调用它。
本节要点
新增 #setState(state, value) 私有方法,统一处理状态变更和值设置。 resolve 和 reject 不再直接操作 #state 和 #value,而是通过 #setState 间接操作。
新增 #setState 方法
Loading code...
完整代码
Loading code...
运行示例
示例一:resolve 后无法再 reject
示例代码
Loading...
示例二:reject 后无法再 resolve
示例代码
Loading...
示例三:抛出异常也走 #setState
示例代码
Loading...