Я занимаюсь разработкой сайта с использованием технологий стека MERN.В этом приложении я хочу предоставить средство поиска.Рядом с ним есть кнопка поиска текстового поля.Я хочу открыть результаты поиска на новой странице.Например,
Таблица данных содержит продукты.Если какой-то пользователь наберет «молоко» и нажмет на поиске, на новой странице отобразятся все данные о молочном продукте.
когда я нажму на кнопку поиска, он обновит URL браузера до этого,
http://localhost:3000/search_result/this_is_search_string
Это код внешнего интерфейса,
<form className="form-inline">
<input type="text"
className="form-control"
value={this.state.name}
onChange={this.on_change_name}/>
<Link to={'/search_result/'+this.state.name} className="btn btn-primary">Search</Link>
</form>
Первая проблема - обновление URL-адреса при нажатии кнопки, но оно не перенаправляет на новую страницу.На странице search_result метод componentDidMount () выглядит следующим образом:
componentDidMount(){
axios.get('http://localhost:4000/item/')
.then(response => {
this.setState({ search_result: response.data });
})
.catch(function (error) {
console.log(error);
})
}
Я хочу передать добавленное значение url вышеупомянутой функции '2-я строка, axios.get('http://localhost:4000/item/')
конец /item/
.Таким образом, я могу загрузить извлеченные значения в таблицу.
Также в методе файла бэкэнд-контроллера выглядит так:
export const get_items_by_name=(req,res)=>{
//Item.find(req.params.id,(err,item)=>{{name: "Renato"}
Item.find({name: "a"},(err,item)=>{
if(err){
res.send(err);
}
res.json(item);
});
};
В SQL есть способ выполнить запрос выбора с помощью LIKE.Но я новичок в стеке MERN.Итак, как я могу обновить описанный выше метод для поиска и получения значений при добавлении URL.
Мне нужна ваша помощь, ребята, как это выяснить.Спасибо за вашу помощь специально с поддержкой реализации.