【发布时间】:2023-03-26 02:20:01
【问题描述】:
我正在编写一个带有 React 的 Web 应用程序,并且我正在遵循 Flux 架构。可悲的是,到目前为止我看到的所有教程要么只使用 1 个组件,要么它们有多个嵌套的组件。
我的问题是关于如何一起使用多个未嵌套的组件。例如 - 项目列表组件与某种形式的表单组件一起添加新项目。每个示例通常都将表单和列表放在同一个父容器中。
在下面的示例中,假设表单和列表组件都有自己的操作/存储,我该如何说当表单的提交事件完成触发时,更新列表组件?
是否要在列表组件中添加对表单组件的引用(如require('component')?
这是不好的做法吗?我应该制作一个包含这两个组件的超级组件吗?
var List = React.createClass({
render: function() {
return(
//list of items of some sort
);
}
});
var Form = React.createClass({
handleSubmit: function() {
//handle submit by firing an action for the dispatcher
},
render: function() {
return(
//form
);
}
});
【问题讨论】:
-
您没有“应用”组件吗? 99% 的 React 应用程序都有一个附加到某个 DOM 元素的父组件。您是否尝试将两个单独的组件附加到单独的元素?
-
@azium 是的 2 个组件到 2 个元素
-
那么flux就是你的答案。两个组件都可以监听同一个 store 的更新。
标签: javascript reactjs flux