首页 > 解决方案 > React-Hooks:跨独立组件监听事件

问题描述

我的应用程序具有以下示例结构:

<App>
--<Users>
------<UserList/>
--</Users>
--<UserManagement>
------<UserList/>
------<AddUser/>
--</UserManagement>
</App>

<UserManagement>我使用状态变量来监听完成的突变,<AddUser>以便在突变完成<UserList>后直接更新。

现在,如果我添加一个用户并转到 ,<UserList>则不会重新渲染,因为它不知道数据库中的更改。我不知道 useEffect 钩子应该听什么。

我考虑过使用<App>. 但我不确定这是否是正确的解决方案。我正在使用一个简单的 sqlite 数据库,不提供任何订阅工具或某事。

有人可以给我一个提示吗?

我希望它可以理解,否则我将提供代码。

谢谢!

标签: reactjsreact-nativesqlitereact-hooks

解决方案


有两种方法:

  1. 您可以将相同的状态变量传递给表示用户列表更改的组件。使用 useEffect 挂钩来侦听此变量以再次从数据库中获取用户列表。

  2. 创建另一个状态变量,基本上与您的数据库同步。您将此变量传递给组件。添加用户时,您将添加到 sql 数据库和此变量。您还可以将相同的变量传递给以显示用户。请记住,这种方法基本上会复制用户列表。


推荐阅读