【问题标题】:Storing fetched data in parent component, what is standard React practice?将获取的数据存储在父组件中,什么是标准的 React 实践?
【发布时间】:2018-09-02 00:51:34
【问题描述】:

在 React 中将数据存储在父组件中以传递给子组件的常见做法是什么?例如:

export default class Main extends Component{
    async componentWillMount(){
         let data = await fetch(some data);
    }
}

如果我打算将“让数据”传递给子组件,应该将其存储在哪里?我不想把它变成一个状态,因为我觉得它只用于你需要重新渲染的时候。以上是获取数据的正确方法吗?假设我刚刚登录,当我重定向到这个 Main 类时,我希望它获取数据然后渲染。什么是标准做法?

【问题讨论】:

    标签: javascript reactjs rest fetch


    【解决方案1】:

    应该想把它放入状态。当然,它会在状态更改时重新渲染,这要归功于您的子组件在获得新道具时会更新。除此之外,您无法更新您的子组件。这是正确的做法。

    您可以在 componentDidMount 中获取数据,因为 componentWillMount 将在未来的版本 (v17) 中被弃用。所以,你在那里获取数据而不是设置你的状态:

    export default class Main extends Component{
        async componentDidMount(){
             let data = await fetch(some data);
             this.setState({data: some data});
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2014-03-31
      • 2011-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-21
      • 2018-08-14
      • 2011-02-14
      相关资源
      最近更新 更多