Tengo una página de destino y una página de búsqueda. La página de destino tiene botones de radio que cambian el estado global de los valores booleanos. La idea es que cuando presione el botón de búsqueda en el aterrizaje, la aplicación me llevará a la página de búsqueda con una lista desplegable. Quiero que el valor predeterminado de la lista desplegable sea el que se seleccionó en la página de destino.
function getServiceDropdown(){ if (props.houseSitting) { return "isHome" } else if (props.dropInVisits) { return "isVisit" } <select defaultValue={getServiceDropdown}> <option>Boarding</option> <option value="isHome">Home Sitting</option> <option value="isVisit">Drop-in Visits</option> <option>Day Care</option> <option>Dog Walking</option> </select>State Block está aquí para el componente de clase
this.state = { bloodTypes: [ { value: "Seçiniz", name: "Choose" }, { value: "0 RH -", name: "0 RH -" }, { value: "0 RH +", name: "0 RH +" }, { value: "A RH -", name: "A RH -" }, { value: "A RH +", name: "A RH +" }, { value: "B RH -", name: "B RH -" }, { value: "B RH +", name: "B RH +" }, { value: "AB RH -", name: "AB RH -" }, { value: "AB RH +", name: "AB RH +" }, ],La función de cambio está aquí para el componente de clase
onChangeData = (type, event) => { const stateData = this.state; if (event === "" || event === "Choose") stateData[type] = undefined else stateData[type] = event this.setState({ stateData }); }El componente de opción de selección está aquí para el componente de clase
<select value={this.state.bloodType} onChange={e => this.onChangeData("bloodType", e.target.value)}> {this.state.bloodTypes.map((type, index) => <option key={index} value={type.value}>{type.name}</option> ) } </select>....... ......