为了账号安全,请及时绑定邮箱和手机立即绑定

如何摆脱nodejs中try-catch块中的语法错误

如何摆脱nodejs中try-catch块中的语法错误

蛊毒传说 2022-12-18 16:37:40
我在 controller.js 文件中使用以下代码。在本地机器上运行时,代码正在运行 finr,但在 aws ec2 机器上运行时,我收到错误。你能帮我解决这个问题吗?query(request_body,(results,error) =>{      if (error){        return res.status(404).json(error);      }      if (results){        try{              if (results.Items.length == 0 ) {                error_msg = {"message":"No record found for  given search criteria"};                return res.status(404).json(error_msg)              } else {                return res.status(200).json(results)              }           }         catch {           return res.status(200).json(results)        }      }           }  )错误:home/ubuntu/node-temp/api/src/user.controller.js:30        catch {              ^SyntaxError: Unexpected token {    at createScript (vm.js:80:10)    at Object.runInThisContext (vm.js:139:10)    at Module._compile (module.js:616:28)    at Object.Module._extensions..js (module.js:663:10)    at Module.load (module.js:565:32)    at tryModuleLoad (module.js:505:12)    at Function.Module._load (module.js:497:3)    at Module.require (module.js:596:17)    at require (internal/module.js:11:18)    at Object.<anonymous> (/home/ubuntu/node-temp/api/src/user.router.js:2:78)
查看完整描述

2 回答

?
呼如林

TA贡献1798条经验 获得超3个赞

try {

    // code

} catch {


}

这称为可选的 catch 绑定

将您的节点版本更新到至少10.3.0或将您的代码更改为类似以下内容:

try {

     // code

} catch (_unused) {


}


查看完整回答
反对 回复 2022-12-18
?
慕工程0101907

TA贡献1887条经验 获得超5个赞

尝试 catch 语法如下所示


try {

   ...stuff 


} catch (error) {

   console.log(error)

}

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/try...catch


所以它看起来像这样


query(request_body,(results,error) =>{

      if (error){

        return res.status(404).json(error);

      }

      if (results){

        try{

              if (results.Items.length == 0 ) {

                error_msg = {"message":"No record found for  given search criteria"};

                return res.status(404).json(error_msg)

              } else {

                return res.status(200).json(results)

              }

           } 

        catch (error) { 

          return res.status(200).json(results)

        }

      }       

    }

  )


查看完整回答
反对 回复 2022-12-18
  • 2 回答
  • 0 关注
  • 123 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信