在函数中解析 promise

Jka*_*ram -1 javascript jsx promise reactjs

我在解决这个承诺时遇到了麻烦。

const getAge = (actorId) => {
    return (
        axios.get(`https://api.themoviedb.org/3/person/${actorId}?api_key=${process.env.REACT_APP_API_KEY}&language=en-US`)
            .then(function (response) {
              return moment().diff(response.data.birthday, 'years')
            })
            .catch(function (error) {
              console.log(error);
            })
        )
    }

console.log(getAge('5000'), 'FUNCTION')
Run Code Online (Sandbox Code Playgroud)

它永远不会解决承诺并返回待定

在此处输入图片说明

我尝试了许多不同的想法,但似乎都没有奏效。我错过了什么?

谢谢

Min*_*Vox 7

您需要调用.then以获取值或将调用包装在异步函数中。例如:

getAge('5000')
  .then(val => console.log(val, 'FUNCTION'));
Run Code Online (Sandbox Code Playgroud)

或者,用 包装async

(async () => {
  const val = await getAge('5000');
  console.log(val, 'FUNCTION');
})();
Run Code Online (Sandbox Code Playgroud)