我想从另一个组件更新一个React组件没有通过 prop 连接到彼此。我该怎么做?
gpnt7bae1#
你必须在两个组件级别之上的某个地方使用状态,然后你必须有一个方法来改变那个状态,然后通过props向下传递数据。编辑:因此,您需要某种状态管理,或者通过上下文挂钩,或者通过其他一些状态管理,如redux、mobx等。对于快速和肮脏,请使用useContext。
nafvub8i2#
如果使用类,则可以执行以下操作:
this.forceUpdate();
dgiusagp3#
你可以传递key作为props,并在里面给予它一个更新的值。但是,有一个陷阱,当密钥更新时,react将在组件树中重新创建该组件,即,它将卸载并重新安装
<Component key={some-value-that-updates}/>
3条答案
按热度按时间gpnt7bae1#
你必须在两个组件级别之上的某个地方使用状态,然后你必须有一个方法来改变那个状态,然后通过props向下传递数据。
编辑:因此,您需要某种状态管理,或者通过上下文挂钩,或者通过其他一些状态管理,如redux、mobx等。对于快速和肮脏,请使用useContext。
nafvub8i2#
如果使用类,则可以执行以下操作:
dgiusagp3#
你可以传递key作为props,并在里面给予它一个更新的值。
但是,有一个陷阱,当密钥更新时,react将在组件树中重新创建该组件,即,它将卸载并重新安装