React 调用 API 取决于 Props
React call API depending on Props
组件应该根据 Prop 的值从 API 中获取新数据。这样 - 不幸的是 - 我无法将 API 调用放在 componentDidMoun()
方法中。我需要将它放在其他地方以动态加载它(当 Prop 发生变化时)。
我不知道把它放在哪里最好的做法是通过 setState()
避免异步副作用的问题。
假设我在 App.js
中有两个组件。一个是列表选择器,我可以在其中选择一个国家/地区。国家被传递给另一个组件,然后从 API 获取数据并显示获取的数据。
HI 您可以使用 componentDidUpdate
函数根据新道具不等于旧道具的条件进行 api 调用。
componentDidUpdate(prevProps, prevState)
{
if(this.props[ANY_KEY] ! == prevProps[ANY_KEY]{
//MAKE THE API CALL HERE AND SET THE STATE IF YOU WANT TO
}
}
组件应该根据 Prop 的值从 API 中获取新数据。这样 - 不幸的是 - 我无法将 API 调用放在 componentDidMoun()
方法中。我需要将它放在其他地方以动态加载它(当 Prop 发生变化时)。
我不知道把它放在哪里最好的做法是通过 setState()
避免异步副作用的问题。
假设我在 App.js
中有两个组件。一个是列表选择器,我可以在其中选择一个国家/地区。国家被传递给另一个组件,然后从 API 获取数据并显示获取的数据。
HI 您可以使用 componentDidUpdate
函数根据新道具不等于旧道具的条件进行 api 调用。
componentDidUpdate(prevProps, prevState)
{
if(this.props[ANY_KEY] ! == prevProps[ANY_KEY]{
//MAKE THE API CALL HERE AND SET THE STATE IF YOU WANT TO
}
}