weixin_33713350 2017-12-20 16:41 采纳率: 0%
浏览 23

获得承诺的价值?

I'm using axios to make an AJAX request to the twitchtvapi. I assigned promise to a variable called example.

Is was it is possible to get the data inside of the Promise object? If I chain the .then method to the promise object I get an error that .then is not a function.

If I log the example variable I can see that there are three promises with the values that I'm looking to store into an array similar to

var example = users.map((item) => axios.get(`https://api.twitch.tv/kraken/streams/${item}?client_id=${client_id}`)
  .then(res => {
    console.log(res.data.stream);
    return res.data.stream;
  })
  .catch(error => {
    console.log(error);
  }));
console.log(example); //an array of three Promise objects 
console.log(example.then(res => res.data)) //returns error example.then is not a function
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>

TLDR; How can I get the data from a Promise object? If I try to chain the .then method I get an error that says .then is not a function.

Thank you for any help in advance.

</div>
  • 写回答

1条回答 默认 最新

  • weixin_33697898 2017-12-20 17:31
    关注

    The following code

    users.map((item) => axios.get(`https://api.twitch.tv/kraken/streams/${item}?client_id=${client_id}`)
    

    returns an array of promises. An array by itself is not a promise. If you wish to execute some code after all the promises have been resolved, you can use Promise.all

    Promise.all(users.map(...))
      .then((responses) => {
        // deal with responses[0].data
        //           responses[1].data
        // etc.
      })
      .catch((error) => {
        // deal with error that occurred
      });
    
    评论

报告相同问题?

悬赏问题

  • ¥15 用vmmare虚拟机用sentaurus仿真的时候,调用terminal程序,输入swb指令弹出这个,打不开workbench,桌面上面的sentaurus workbench也打不开
  • ¥75 使用winspool.drv的SetPrinter设置打印机失败
  • ¥15 simulink 硬件在环路仿真
  • ¥15 python动态规划:N根火柴摆出的最大数字
  • ¥20 (标签-excel)
  • ¥200 求idea10和MyEclipse7.1
  • ¥20 vb6.0截取当前窗体保存为jpg文件
  • ¥20 苹果手机不使用大疆sdk怎么获取遥控器控制信息或如何接入大疆sdk并且成功上架sdk
  • ¥20 woocommerce 注册按键重定向
  • ¥100 求书法图像文字切割代码