我遇到的情况是,我们的应用程序具有componentDidUpdate
中的多个功能。在每个功能中,他们都会检查其特定数据是否已更新。例如:
componentDidUpdate(prevProps) {
this.handleFoo(prevProps)
this.handleMoreFoo(prevProps)
}
handleFoo(prevProps){
if(this.props.foo != prevProps.foo){
//Do Something
}
}
handleMoreFoo(prevProps){
if(this.props.moreFoo != prevProps.moreFoo){
//Do Something
}
}
我一直在查看useEffect
钩子,想知道我是否可以在每个函数中剔除该初始检查并利用[]
中的useEffect
并仅调用其中一个这些功能,如果它们的特定键是这样更新的:
useEffect(() => {
if(fooKey){ handleFoo() }
if(moreFoo) { handleMoreFoo() }
},[fooKey,moreFooKey])
这可能吗?这是明智的吗?