Мне нужно компонент, который, кликнуть в кнопку, был бы должен звонить в другой компонент. В функции я распределяю ему стоимость как boletoElegido, где - id (auque, если я использую props.deberia мочь возвращать целый объект)
Это исходный код компонента, который приказывает называть нового.
import React, { Fragment, useState} from 'react';
import BoletoDetalles from './BoletosDetalles';
function SeleccionBoleto({boletos})
{
const [boletoElegido, guardarBoletoElegido] = useState();
const seleccionarBoleto = e => {
guardarBoletoElegido(e.target.value);
}
const enviarBoletoElegido = () =>{
return <BoletoDetalles boletoElegido = {boletoElegido}/>;
}
return(
<Fragment>
<p>Seleccion de ticket a evaluar</p>
<form>
<select onChange={seleccionarBoleto}>
<option value=""> Seleccione el ticket a evaluar</option>
{
boletos.map(boleto =>(
<option key={boleto.id} value={boleto.id}>{boleto.id}</option>
))
}
</select>
<div>
<button type="reset" id="btn_limpiar" className="btn btn-danger col-sm-6">Limpiar</button>
<button type="button" className="btn btn-info col-sm-6"
onClick={enviarBoletoElegido}
>Buscar</button>
</div>
</form>
</Fragment>
)
}
export default SeleccionBoleto;
В моем onClick, я использую функцию, которая возвращает компонент, но это не загружает в DOM.
Контент другого компонента пока - текст доказательства, чтобы подтверждать, функционирует ли груз нового компонента.
Ты считал использовать react-router? Он был бы выбором. Другой выбор состоял бы в том, чтобы у тебя были оба компонента внутри твоего Fragment, но компонент, который ты хочешь, чтобы он появился, дав click, был бы скрытым завися state, такой увидь
const [visibilidad, setVisibilidad] = useState(false)
и дав click вместо того, чтобы стараться показывать одинокий componentet, ты меняешь state, в твоем Fragment ты санкционируешь, которого, если state видимость - true, ты показываешь компонент.
{visibilidad ? <Component />: null}