同步操作之后的行会立即注意到更改吗



如果在块中调度同步操作,它下面的行会注意到变化吗?

// In a compoent connected to the reducer
class someComponent extends Component {
const interuptOrNot = () => {
this.props.dispatchChangeSomeStateAction({ payload: 2 })
}
render() {
this.interuptOrNot()
console.log(this.props.someState)
return(<SomeComponent>)
}
}

如果reducer的原始props值等于1,那么记录器的输出信息是什么。1还是2?或者,第一个渲染调用没有输出,但它将输出2,用于具有最新状态的重新渲染。

我知道在render func中发送操作是个坏主意,但如果我调度一些操作来更改组件使用的reducer的状态,会发生什么?

如果dispatchChangeSomeStateAction将一个sync-redux操作分派给reducer,并且我在render函数中调用该函数,该怎么办?当前渲染是否会因为状态过期而中止?

console.log(this.props.someState)

将返回1。

当前渲染函数将使用当前道具值运行。

当组件的状态发生更改时,它将重新渲染。

使用componentWillReceiveProps跟踪新道具/更新道具。

道具是不可变的,如果有什么东西更新了它们,您将跟踪componentWillReceiveProps中的更改,并将更新传递给该组件的状态。

相关内容

  • 没有找到相关文章

最新更新