Form.js데이터 전달
import React from 'react'
export default class Form extends React.Component{
handlePatientDisease(e){
this.setState({
patientdisease: e.target.value
})
}
handlePatientPresentIllness(e){
this.setState({
patientpresentillness: e.target.value
})
}
handlePatientName(e){
let patientName = e.target.value
this.setState({ patientName })
this.props.onPatientNameChange.value
}
handleSubmit(e){
e.preventDefault();
console.log("Patient name changed to:", patientName.value)
}
render() {
return (
<form onSubmit={this.handleSubmit}>
<ul>
<li>
<label> Nome do Paciente </label>
<input type="text" name="patientName" id="patientName" placeholder="nome do paciente" onChange={this.handlePatientName.bind(this)} />
</li>
<li>
<label> Doença
<input type="text" name="patientdisease" placeholder="disease"/>
</label>
</li>
<li>
<label> Histórico
<input type="text" name="patientpresentillness" placeholder="historia do paciente"/>
</label>
</li>
<li>
<button type="submit"> Submit </button>
</li>
</ul>
</form>
);
}
}
그래서, 지금은 이미 형태로 제출 된 데이터를 얻을 콘솔에 표시 할 수 있습니다. 다른 구성 요소에 지금 어떻게 표시합니까? 나는 아래의 해당 구성 요소의 목록 항목으로 데이터에 원하는 :
Sidebar.js
import React from 'react'
import patientName from './Form'
export default class Sidebar extends React.Component{
handlePatientNameChange(patientName){
console.log("Patient name changed to:", patientName)
}
render() {
return(
<div class="container-fluid">
<div class="row">
<div class="col-sm-3 col-md-2 sidebar">
<ul class="nav nav-sidebar">
<li><a href="#">Alexandre Miranda</a></li>
<li><a href="#">Felipe Neves</a></li>
<li><a href="#">Andressa Lyra</a></li>
<li><a href="#">Artur Lyra</a></li>
<li><a href="#">Antonio Lyra</a></li>
<li><a href="#">Ricardo Lyra</a></li>
// When I submit, I want to show the patientName here as a list item....
</ul>
</div>
</div>
</div>
);
}
}
표시되는 코드가 충분하지 않습니다. 본질적으로 수행해야 할 작업은 양식 구성 요소를 부모 구성 요소의 개체로 사용하는 것입니다. 양식 구성 요소와 onSubmit에 전달하여 부모 구성 요소로 다시 전달하고 거기에서 상태를 설정하십시오. 또한 양식 데이터가 사이드 바 구성 요소로 전달되도록하십시오. 그러면 상태가 업데이트 될 때 해당 구성 요소도 함께 업데이트됩니다. – erichardson30
@ erichardson30 제 프로젝트를보고 도와주세요. https://github.com/alex42miranda/Test –
@ erichardson30 이미 문제를 열었습니다. –