У меня есть панель поиска, где пользователь должен иметь возможность ввести штат, город или почтовый индекс и получить список результатов обратно.Все мои данные взяты из моего собственного набора данных, разделенного на столбцы location_state, location_city и location_zip_code.Я могу заставить пользователя искать только одно значение, если я жестко закодирую этот запрос в запросе на выборку следующим образом:
`http://localhost:8000/api/results?location_city=${this.state.searchTerm}`
Однако я не уверен, как сделать так, чтобы запрос изменилсяв зависимости от того, что пользователь вводит. Поэтому, если пользователь вводит почтовый индекс, запрос должен быть location_zip_code=
или если они вводят в состоянии, это должно быть location_state=
Я попытался сделатьобъект с параметрами, совпадающими с поисковым термином, но, как вы можете себе представить, он добавил все эти параметры в URL, который я не хочу.Это то, что у меня до сих пор, что не работает:
fetchApi(method = 'GET', apiBody ) {
const params = {
location_city: this.state.searchTerm,
location_state: this.state.searchTerm,
location_zip_code: this.state.searchTerm,
};
const urlParams = new URLSearchParams(Object.entries(params));
fetch('http://localhost:8000/api/results?' + urlParams + `=${this.state.searchTerm}`, {
method: method,
headers: {
'content-type': 'application/json'
},
// rest of code that isn't relevant.
Я полностью застрял на том, как это сделать.Кто-нибудь может мне помочь с этим?