如何在React中设置具有外部函数的状态(我应该吗?)

时间:2018-01-14 22:10:53

标签: javascript reactjs react-native fetch-api

我有一个API获取请求,我想在2个不同的数据集上的2个不同位置使用。

我尝试在this post上实现用户aeid的答案,但它无效。我知道如果我在我的组件中嵌入获取请求,我可以成功更新状态,但我不想这样做,因为我需要重用这段代码而且不会很干。

我在api.js中获取的API是:

export const getGithub = (url, setState, userData) => {
        return fetch(root_url + url)
            .then(res => {
                if (!res.ok) {
                    connectionFailure();
                }
                return res;
            })
            .then(data => data.json())
            .then(data => setState({
                [userData]: data
            }))
}

我在我的组件中调用它:

 componentWillMount() {
      getGithub(this.state.username, this.setState, "userData")

}

尝试了一些变体,例如从userData移除括号,并将其作为this.state.userData而不是字符串传递,但没有成功。

0 个答案:

没有答案