【问题标题】:Trying to display number of Twitter followers in a React app尝试在 React 应用程序中显示 Twitter 关注者的数量
【发布时间】:2021-02-13 17:21:44
【问题描述】:

我一直在尝试获取一个 React 页面来显示一个帐户的 Twitter 关注者数量。

Twitter 只会给我密钥、秘密和不记名令牌,所以很多以前写的方法似乎已经过时了,但即使是以前的一些答案似乎也不适合我。例如我试过

    import React, { Component } from 'react';

function Twitter () {
    fetch("https://api.twitter.com/2/users/by/:username
“, {
        headers: {
            Authorization: "Bearer <token>"
        }
    })
  let followerCount = user.fields.public_metrics.follower_count;
return followerCount;
}

export default Twitter;

理论上,这应该将数字提供给下一个 React 组件,但会在第一个引号处引发错误。

现在不知道如何实现这一点,愿意尝试合并一些 npm 包,但我认为显示一个数字会很简单!

【问题讨论】:

  • 好吧,正如语法高亮显示的那样,这是错误的引用。将“替换为”
  • 还有,fetch方法的then解析器在哪里
  • @JonasWilms 好地方!可悲的是,我的代码有更大的问题!
  • @VimalPatel 这是一个非常好的问题!我需要做一些进一步的研究。

标签: javascript reactjs twitter


【解决方案1】:

是的,这不起作用,您必须等到 fetch 返回响应。现在它将尝试从 api 获取,并且在获取返回之前函数将返回。您可以使用 await 并使函数异步或使用 Promise。

async function Twitter () {
   await fetch("https://api.twitter.com/2/users/by/:username
“, {
        headers: {
            Authorization: "Bearer <token>"
        }
    })
  let followerCount = user.fields.public_metrics.follower_count;
return followerCount;
}

【讨论】:

  • 谢谢,解决了这个问题!现在我只需要弄清楚如何处理返回的数据,但这是一个完全独立的问题!
  • 你可以使用这个,或者使用promise,你可以把fetch放在componentdidmount中,在react中将它传递给state然后获取它
猜你喜欢
  • 2013-06-11
  • 2012-08-19
  • 1970-01-01
  • 2013-06-28
  • 2011-09-20
  • 2013-07-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-23
相关资源
最近更新 更多