javascript - 我是在用这组组件思考 React 吗?

标签 javascript reactjs components

我正在构建一个虚拟应用程序来尝试学习 React。我拥有的是一个小工具栏,其中有一些按钮应该启动不同的模式。在我采取错误的方法之前,我想知道我在 React 中的思考是否正确。

所以,我有组件:

App <Toolbar /> <Button /> <Modal />

这是简化的,但你可以看到我的 ToolbarModal是 sibling 。

这是一个好方法吗,还是我应该将模式与其启动按钮耦合? (我选择将它们解耦的原因是为了防止我遇到不同事件可能触发某些内容的情况)。

另外,如果这种方式没问题,我是否正确地认为要传递状态(例如开放模式), Button应该将状态传递到 App然后回到Modal

我认为组件之间的通信是我目前唯一真正没有得到的部分。

最佳答案

您对您的组件集没问题。不过,用按钮传递状态并不是一个好主意。更好的方法是,将状态与模态本身联系起来,然后单击按钮将执行一个函数(例如“操作”),该函数将更改模态的状态,导致其重新渲染自身。 对于更高级的东西,您需要与 Flux 或 Redux 等库结合使用,以便将状态管理工作委托(delegate)给它们。

关于javascript - 我是在用这组组件思考 React 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39367802/

相关文章:

javascript - todomvc Backbone 对类 'editing' 的更改如何使 todo 可编辑?

reactjs - react 谷歌地图 : Cannot find namespace 'google'

javascript - 在循环中调用 setState 只更新状态 1 次

javascript - 输入类型 ='file' 接受 pdf 和 excel 文件扩展名

javascript - 坚持导航栏延迟

javascript - 在php中使用jquery每5秒更改一次图片

r - 使用 for 循环命名向量中的组件

javascript - 错误 : Cannot resolve module 'style-loader'

javascript - 如何将此类基础高阶组件更改为功能组件?

java - 使用 AWT 设置 java 元素的大小