阅读文档按照我的理解中ES6的含义:从ES6箭解决的诺言功能
foo => someFun(foo);
等同于:
foo => { return someFun(foo); }
我返回一个新的承诺和内使用箭头函数调用拒绝方法的解决方法,例如
return new Promise(function(resolve, reject)
{
someFunThatReturnsAPromise()
.then(data => resolve(data))
.catch(err => reject(err));
});
因此在后来竟代码,
.then(data => return resolve(data))
如果是这样,它的问题是解决的结果(其中我不知道值的类型)和我应该改为略少简洁,使用写{}防止隐式返回
.then(data => { resolve(data); })
一些评论已经准确地表明内部承诺是不需要的。因此,请考虑原来的问题,但随后修改为“。然后(data => resolve(data.item))“,即执行一些额外的(尽管很轻微)处理 – const
在任何情况下,避免['Promise'构造函数反模式](https://stackoverflow.com/q/23803743/1048572?什么是承诺 - 构建 - 反模式 - 以及如何避免 - 它),并且不要将'resolve' /'reject'作为回调传递给承诺! – Bergi