在ES6 Promise中,我应该在解决/拒绝之前使用return吗
Should I use return before resolve / reject in ES6 Promise?
在为ES6 promise调用resolve/reject时使用return是否更正确?这对调用堆栈有帮助吗?
return new Promise((resolve, reject) => {
this._mariadb.query(...,
(err, rows) => {
if (err) {return reject(err);}
if (rows.info.numRows > 0) {return resolve(true);}
return resolve(false);
});
});
不使用返回值,但它可以快速提前退出函数。仅此而已。你上面的代码可以用完全相同的方式编写,而不会返回
if (err)
reject(err);
else if (rows.info.numRows > 0)
resolve(true);
else
resolve(false);
或者更好的
if (err)
reject(err);
else
resolve(rows.info.numRows > 0);
return reject(err)
只是一种更简洁(但也更令人困惑)的说法reject(err); return
。Promise
("executor")的参数不应该返回任何有意义的内容,所以不,不管您是否使用return
。
不,你不应该这样做,因为一旦承诺被解决/拒绝,它就永远不会改变状态
相关文章:
- 在流星上使用微信js-sdk时出现拒绝权限错误
- 在Nodejs中Express输入DEBUG=app时权限被拒绝/bin
- jquery if语句返回return wong语句
- 函数在return语句之前返回空对象
- Javascript Return and if/else
- 简单的ES6承诺问题-交换解决和拒绝参数
- javascript第三个XMLHttpRequest被拒绝.但前两个是允许的
- 在ES6 Promise中,我应该在解决/拒绝之前使用return吗
- Angular promise return"未定义的“;值.NET MVC
- Javascript用函数return替换局部变量
- Facebook FB.init”;访问被拒绝”;在Internet Explorer 11中
- JavaScript中的“return cb()”有缺点吗
- 未处理的拒绝MongoError:无法连接到MongoDB中的服务器
- Node.js solrProxy访问被拒绝
- 使用jquery创建dom元素会导致ie9出现拒绝访问错误
- JS-fn()中返回后方括号的含义{return{}[]}
- CKeditor预览插件.js,为Chrome和IE进行编辑.因为它拒绝CSS样式
- 在$q服务中捕获拒绝而不触发成功回调
- 在promise中为回调添加超时并拒绝
- 拒绝jQueryajax内部的延迟