【发布时间】:2016-03-13 15:15:03
【问题描述】:
我知道这不是覆盖原生 JS API 的最佳方法,我更多地是为了实验。
我想覆盖 Promise 解析方法处理程序,以便在每次解析时执行一些额外的逻辑。有可能吗?
【问题讨论】:
-
你试过了吗?我的意思是如果你能够覆盖整个 Promise 对象,那么它是可能的。如果你不能,那么我想你只能更改原型 Promise 对象而不是基本 Promise 对象本身
-
既然你用的是es6,我宁愿继续创建一个包装类
-
你能举个例子吗?请记住,我想保留 Promise 类名。
-
你想重写 Promise.resolve 吗?如果是这样,那真的是个坏主意。如果你想创建一个 Promise 并控制如何调用 resolve,这不仅是个好主意,而且很正常。 new Promise((resolve,reject) => { /*现在由你决定如何/如果在这里调用resolve或reject*/ })
-
我想在每次解决后添加额外的操作
标签: javascript ecmascript-6 es6-promise