В настоящее время я изучаю реагирование с бэкэндом expressjs.
В настоящее время я могу получить данные о загрузке страницы с помощью componentWillMount ();
//APP.JS
componentWillMount() {
fetch('/hotels')
.then(res => res.json())
.then((result) => {
this.getHotels(result);
});
}
это отлично работает.
Теперь я создал компонент с именем topbar, который в основном отображает заголовок навигации (как переполнение стека или Facebook). в topBar.js у меня есть:
//topbar.js
const topBar = () => {
return(
<div className="topBar">
<input type="image" className="logo" src={logo} onClick = {logoClick} alt = "Trip Advisor"/>
<button className="buttonStyle" onClick = {hotelsClick}>Hotels</button>
<button className="buttonStyle" onClick = {vRentalClick}>Vacation Rentals</button>
<button className="buttonStyle">Flights</button>
<button className="buttonStyle">Cafés</button>
<button className="buttonStyle" disabled></button>
<button className="buttonStyle">My Trips</button>
<button className="buttonStyle" onClick = {join}>Join</button>
</div>
)
}
При нажатии на кнопку отелей в функции hotelsClick, определенной в файле topbar.js, я хочу иметь возможность получить '/ hotels' (или некоторую другую страницу) из бэкэнда и отобразить его в div (или просто сохранить в состоянии) в App.js. Как правильно это сделать?