Javascript 如何使用componentDidUpdate来更新某些内容,而不必刷新页面?
因此,F表示“喜爱的电影”状态,W表示“观看的电影”状态 我制作了一个按钮,可以将“最喜爱的电影”清除为0,但要更新它,我必须刷新页面。在不刷新页面的情况下,如何使用Javascript 如何使用componentDidUpdate来更新某些内容,而不必刷新页面?,javascript,reactjs,Javascript,Reactjs,因此,F表示“喜爱的电影”状态,W表示“观看的电影”状态 我制作了一个按钮,可以将“最喜爱的电影”清除为0,但要更新它,我必须刷新页面。在不刷新页面的情况下,如何使用componentdiddupdate生命周期对其进行更新 你能给我解释一下这个过程吗?我认为你应该把你的电影作为一种状态,我认为componentDidUpdate不是最好的方法,你只需要点击一个按钮就可以了 在构造函数中 constructor(props) { super(props); this.state = {
componentdiddupdate
生命周期对其进行更新
你能给我解释一下这个过程吗?我认为你应该把你的电影作为一种状态,我认为componentDidUpdate不是最好的方法,你只需要点击一个按钮
就可以了
在构造函数中
constructor(props) {
super(props);
this.state = { movies: 0 }; // or movies: [] empty array
}
然后在按钮组件中
<button
onClick={() => {
this.setState({ movies: 0 });
}}
/>
{
this.setState({movies:0});
}}
/>
我认为你应该把你的电影作为一种状态,我认为componentDidUpdate不是最好的方法,你只需要点击一个按钮onClick
listener
在构造函数中
constructor(props) {
super(props);
this.state = { movies: 0 }; // or movies: [] empty array
}
然后在按钮组件中
<button
onClick={() => {
this.setState({ movies: 0 });
}}
/>
{
this.setState({movies:0});
}}
/>
如果您在这个.props中获得了值,那么在componentDidUpdate中可以做的一件事是
componentDidUpdate(prevProps) {
if (this.props !== prevProps) {
//update the state for movies favorited & movies watched.
}
}
另一个解决方案是,
初始化两个状态,然后在api调用响应的情况下在componentDidMount中设置状态
如果这些道具来自道具,请使用组件将接收道具,在下一步中更新道具
componentWillReceiveProps = (nextProps) => {
this.setState({m_fav : nextProps.fav, m_watch: nextProps.watch})
}
如果您在这个.props中获得值,那么在componentDidUpdate中可以做的一件事是
componentDidUpdate(prevProps) {
if (this.props !== prevProps) {
//update the state for movies favorited & movies watched.
}
}
另一个解决方案是,
初始化两个状态,然后在api调用响应的情况下在componentDidMount中设置状态
如果这些道具来自道具,请使用组件将接收道具,在下一步中更新道具
componentWillReceiveProps = (nextProps) => {
this.setState({m_fav : nextProps.fav, m_watch: nextProps.watch})
}
为什么需要刷新页面以更新最喜爱的电影?你能在问题中包含你的代码吗?为什么你需要刷新页面来更新你最喜欢的电影?你能在问题中加入你的代码吗?