Ale*_*207 5 javascript components reactjs
我正在使用 react-bootstrap 模态、表单和按钮。
想要单击按钮的功能应该打开带有表单的模式。填写表单后,单击一个按钮(在modal 上),它会验证表单数据并通过 REST API 发布它。
我已经足够弄清楚我的组件拆分应该如下:
一个按钮组件、一个模态组件和一个表单组件。
根据道具/状态构建这些组件并放置用于验证数据的功能的正确方法是什么?我在理解孩子/父母关系以及何时适用时遇到困难
成分:
应用组件:这将是顶级组件
按钮组件(如果它只是一个按钮,也可以只是一个按钮):如果这只是一个按钮,您可以将其保留在 中App component,如果您愿意将其与某些自定义元素重用,请将其放置在组件中。
组件树:
App Component 将包含一个类似showModal的状态,我们需要有一个处理程序来设置这个值,并且这个处理程序在按钮被点击时被触发。
import FormModal from './FormModal';
class App extends React.Component {
state = {
showModal : false
}
showModalHandler = (event) =>{
this.setState({showModal:true});
}
hideModalHandler = (event) =>{
this.setState({showModal:false});
}
render() {
return (
<div className="shopping-list">
<button type="button" onClick={this.showModalHandler}>Click Me!
</button>
</div>
<FormModal showModal={this.sate.showModal} hideModalHandler={this.hideModalHandler}></FormModal>
);
}
}
Run Code Online (Sandbox Code Playgroud)
形式模态:
import FormContent from './FormContent';
class FormModal extends React.Component {
render() {
const formContent = <FormContent></FormContent>;
const modal = this.props.showModal ? <div>{formContent}</div> : null;
return (
<div>
{modal}
</div>
);
}
}
export default FormModal;
Run Code Online (Sandbox Code Playgroud)
希望有所帮助!
| 归档时间: |
|
| 查看次数: |
9762 次 |
| 最近记录: |