我如何在前端返回一个Promise错误

时间:2019-10-26 01:00:11

标签: postgresql react-native express loopback4

我正在尝试执行一个Postgresql查询,该查询将数据附加到具有特定ID的数组中,如果查询不能更新任何行,则它应该在前端返回错误。但是,现在,我只能让它将错误返回到后端的日志中,而我想知道如何才能使其返回到用户的错误。 带有查询的代码位于存储库中,如下所示:


  public updateThis(
  user: number,
  name: string,
): Promise<User> {
  let self = this
  return new Promise<User>(function(resolve, reject){
     self.dataSource.execute('update lbstarter.users SET friends = array_append(friends, '+
     1 + ') where user = '+ user + ' and name = \'' + name +
  '\' and completed = false returning id AS id, friends AS friends;', [])
  .then(record => {
    if (record.rows.length == 0) {
      return Promise.reject('No record found')
    }
    else {
      resolve(record.rows)
    }
  }).catch(err => {throw new Error(err)});
   })
}

简单地调用此代码的路由是:

return await this.userRepository.updateThis(user, name)

它将在后端引发错误,但不会将其返回给前端的调用。在前端,我收到一个内部服务器错误。

0 个答案:

没有答案