我想使用React and Redux
- Modal Window
和data form
包含4 inputs/selects UI elements
来重新创建典型的用户界面模式。
我读了很多关于智能容器组件和哑表示组件的内容,但没有足够的练习来确定这种特殊情况下的最佳组合模式。
目前我想出了以下组成部分:
<ModalContainer />
<ModalWindow />
<Form />
<Input 1/> ... <Input 2/>
请,建议:
答案 0 :(得分:0)
哪些组件应该被视为智能和愚蠢?
你的智能组件也就是所有的逻辑应该存在于容器中,你可以在这里得到所有数据并将其传递给只呈现组件的表示组件(没有别的,这就是为什么它们被称为哑)。关于这个here有一篇很棒的文章,它解释得非常好。
如何使用Redux实现正确的数据流?
嗯,我会说这个问题非常广泛,而且redux docs本身就是理解这个问题的好方法。
在这种情况下组件构成的外观如何?
<强> ModalContainer.js 强>
class ModalContainer extends React.Component{
render(){
return <Modal {...this.props} />
}
}
function mapDispatchToProps(dispatch){
//map your dispatches here
}
export default connect()(ModalContainer)
<强> Modal.js 强>
class Modal extends React.Component{
render() {
// you can change your modal content here based on some props, make it more generic
<Form {...this.props}/>
}
}
export default Modal
<强> Form.js 强>
class Form extends React.Component{
onSubmit () {
const {dispatch} = this.props
//dispatch your action here to call API and update store
}
render() {
<Form onSubmit={this.onSubmit.bind(this)>
//form data
</Form>
}
}
export default Form
P.S:
要阅读的任何规范代码示例或博客?
Sound Redux - 我发现这段代码在开始时非常干净且有用。
请询问您是否需要其他任何内容