草庐IT

try-catch-rethrow

全部标签

javascript - Promises 和通用的 .catch() 语句

我正在为我的系统编写一个API,它向服务器发送一个XHR并返回一个应该由调用者处理的promise-到目前为止一切顺利。对于每个API调用,我必须使用.then和.catch调用,但通常(大约75%的时间)是.catch引用了使用console.error简单打印的相同功能。我的问题是-有没有办法为我创建的每个promise附加一个默认的catch语句?(比如说打印到控制台),以及我想要的每个promise进一步处理拒绝,我会添加另一个.catch调用(甚至覆盖它)?每个调用都有自己的.catch的简化示例:http://jsbin.com/waqufapide/edit?js,con

javascript - 有没有办法将 await/async try/catch block 包装到每个函数?

所以我正在使用express.js并考虑将async/await与节点7一起使用。有没有一种方法我仍然可以捕获错误但摆脱try/catchblock?也许是函数包装器?我不确定这将如何实际执行函数的代码并调用next(err)。exports.index=asyncfunction(req,res,next){try{letuser=awaitUser.findOne().exec();res.status(200).json(user);}catch(err){next(err);}}像这样的……?functionexample(){//Implementstry/catchbloc

javascript - catch 之后执行

我有以下fiddle:http://jsfiddle.net/thelgevold/3uv9nnjm/6/angular.module('hello',[]).controller('helloController',function($q){console.clear();functionsomeService(){vardeferred=$q.defer();deferred.reject({e:'error'});returndeferred.promise;}functioncallService(){returnsomeService().then(function(obj)

javascript - 引用错误 : You are trying to `import` a file after the Jest environment has been torn down

我有一个组件使用来自ReactNative的Animated组件。我开始编写一个测试用例来模拟组件的onPress,它调用一个函数,其中包含Animated.timing和setState。运行jest工作正常,但测试永远不会停止运行,而且我之前编写的一个不相关的测试用例现在似乎从未通过(之前通过)。运行jest--watch,我得到这个错误:ReferenceError:Youaretryingto`import`afileaftertheJestenvironmenthasbeentorndown.atFunction.bezier(node_modules/react-nativ

javascript - react-transform-catch-errors 看起来不像 React 组件

我正在做一个React项目,我们正在使用React入门套件。我是这个项目的新手,当我从github克隆项目并使用npmstart启动项目时,它会启动服务器,但在网络检查器中我收到以下错误。UncaughtError:react-transform-catch-errors的imports[1]看起来不像React组件。已经在项目中工作的人不会收到此错误。但是,当我向一位friend要求获得一个新的克隆并做我做的同样的事情时,他也得到了同样的错误。我不知道需要发布哪些详细信息,所以如果有人需要更多详细信息,请询问。 最佳答案 最后我找

javascript - 有没有办法为 Javascript 中的每个函数添加 try-catch?

对于错误报告,我想在我拥有的每个函数的代码周围插入一个try-catch包装器。所以基本上我想替换functionfoo(arg){bar();}...与...functionfoo(arg){try{bar()}catch(e){customErrorHandler(e)}}有没有一种方法可以将这种通用的try-catch应用到所有函数,而无需手动编辑所有函数?比如修改Function对象的原型(prototype)?编辑为什么我要trycatch所有函数:我正在构建一个在iOS和Android上发布的HTML5应用程序。从我当前的基本javascript错误报告中可以看出,即使该应

javascript - catch block 中的 return 语句发生了什么

我已经在javascript中尝试过这段代码functionabc(){try{console.log(0);throw"isempty";}catch(err){console.log(1);returntrue;}finally{returnfalse;}return(4);}console.log(abc());我得到的输出是错误的。我明白Finally总是执行,不管trycatch的结果如何,但是catch中的return语句会发生什么。 最佳答案 IunderstandFinallyalwaysexecuteregardl

javascript - 条件 catch 子句 - 浏览器支持

哪些浏览器支持条件捕获子句?在MDN上try...catch你可以找到Conditionalcatchclauses作为非标准功能。try{myroutine();//maythrowthreeexceptions}catch(eifeinstanceofTypeError){//statementstohandleTypeErrorexceptions}catch(eifeinstanceofRangeError){//statementstohandleRangeErrorexceptions}catch(eifeinstanceofEvalError){//statementst

javascript - Sharepoint 2013 通过 REST API : Error 403 Forbidden when trying to create item

我正在尝试使用Sharepoint2013上的其余API创建一个简单的列表项。我的代码:$.ajax({url:siteUrl+"/_api/web/lists/getByTitle('internal_Listname')/items",type:"POST",contentType:"application/json;odata=verbose",data:JSON.stringify({'__metadata':{'type':'SP.Data.internal_ListnameListItem',},'K1F1':k1f1Result,}),headers:{"accept":

javascript - 我可以在不指定 catch 参数/标识符的情况下在 JavaScript 中使用 try/catch 吗?

我想知道是否有一种方法可以在执行JStry/catch时不指定参数。不过,每次我尝试这样做时,try/catch都不起作用。工作版本:try{//Breakingcode}catch(e){//Nothinghappenshere}我的想法(没有'e'):try{//Breakingcode}catch(){//Nothinghappenshere} 最佳答案 2019年可选的catch绑定(bind)节点.js在Node.js中,此功能称为OptionalCatchBinding,自Node.js版本10.3起受支持,请参阅htt