Не знаю, как вернуть что-то в обещании - PullRequest
0 голосов
/ 03 июня 2019

Я использую Firebase, где я использую некоторые обещания (в приложении с естественной реакцией).

Я пытаюсь развернуть, но ESLINT жалуется, что мое предложение then ничего не возвращает:

admin.auth().getUser(phone)
    .then(userRecord => {
      const code = Math.floor((Math.random() * 8999 + 1000))

      twilio.messages.create({
        body: 'Your code is ' + code,
        to: phone,
        from: '+4915735984308'
      }, (err) => {
        if (err) { return res.status(422).send(err) }

        admin.database().ref('users/' + phone)
          .update({code: code, codeValid: true}, () => {
            res.send({success: true})
          })
      })
    })
    .catch((err) => {
      res.status(422).send({error: err})
    })

Проблема в том, что я не хочу ничего возвращать, просто пишу вещи в базе данных. Я безуспешно пробовал следующее:

.then(userRecord => {
      const code = Math.floor((Math.random() * 8999 + 1000))

      twilio.messages.create({
        body: 'Your code is ' + code,
        to: phone,
        from: '+4915735984308'
      }, (err) => {
        if (err) { return res.status(422).send(err) }

        admin.database().ref('users/' + phone)
          .update({code: code, codeValid: true}, () => {
            res.send({success: true}, () => {return true})
          })
      }, () => {return true})
    })
    .catch((err) => {
      res.status(422).send({error: err}, () => {return true})
    })

Может ли кто-нибудь помочь мне с этим? Куда мне написать заявление о возврате?

1 Ответ

1 голос
/ 03 июня 2019

Просто попробуйте вернуть последнюю строку

admin.auth().getUser(phone)
    .then(userRecord => {
      const code = Math.floor((Math.random() * 8999 + 1000))

      return twilio.messages.create({
        body: 'Your code is ' + code,
        to: phone,
        from: '+4915735984308'
      }, (err) => {
        if (err) { return res.status(422).send(err) }

        admin.database().ref('users/' + phone)
          .update({code: code, codeValid: true}, () => {
            res.send({success: true})
          })
      })
    })
    .catch((err) => {
      res.status(422).send({error: err})
    })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...