将数据从搜索栏传递到后端函数



标题说明了一切——我正试图从搜索栏发送一个单词,以便在后端函数中使用和处理。

关于如何做到这一点,有什么想法吗?

我使用react和node/express进行

您也可以使用jQuery。jQuery的目的是让在您的网站上使用JavaScript变得更容易。jQuery接受了许多需要许多行JavaScript代码才能完成的常见任务,并将它们封装到可以用一行代码调用的方法中。

您可以使用以下方法。可以从req.body在后端访问搜索项。我还使用了debounce方法,这样,如果用户连续在搜索栏中键入,api就不会被淹没

import { useEffect, useState } from "react";
import debounce from "lodash.debounce";
import axios from "axios";
export default function App() {
const [text, setText] = useState("");
useEffect(() => {
if (text.length > 0) {
const payload = {
query: text
};
axios
.post("your_api_url_here", payload)
.then((res) => {
console.log(res);
})
.catch((err) => {
console.log(err);
});
}
}, [text]);
const update = (e) => setText(e?.target?.value);
const debouncedOnChange = debounce(update, 500); // delay to prevent bulk api call
return (
<div className="App">
<input placeholder="Search" type="text" onChange={debouncedOnChange} />
</div>
);
}

无论何时您决定发送值(按下按钮或检测特定字符串(,您都可以获得访问document对象的元素的值,并通过请求将其发送到后端(可能使用axios(

最新更新