【发布时间】:2020-05-02 14:28:44
【问题描述】:
我试图创建一个搜索输入框,使用 reactjs 过滤 ag 网格中的流派列。基本上 url 的端点有一个不同的端点,所以我不能在最后用 =${search} 查询它。因为流派的网址是http://url/library/books?genre=,如果有意义的话,我希望最初显示所有书籍。我完全不知道该怎么做,所以任何能推动我朝着正确方向前进的帮助都将不胜感激/链接到有帮助的东西或任何东西。目前以下代码将为我提供我想要的所有信息,但我只需要添加一个搜索输入来过滤:
function App () {
const [rowData, setRowData] = useState([]);
const [search, setSearch] =useState ("");
const url = "http://url/library/books";
const columns = [
{headerName: "Title", field: "title"},
{headerName: "Author", field: "author"},
{headerName: "Genre", field: "genre", sortable: true},
];
useEffect(() => {
fetch(url)
.then(res => res.json())
.then(json => json.map(res => {
return{
title: res.title,
author: res.author,
genre: res.genre,
};
})
).then(res => setRowData(res));
},[]);
return (
<SearchFilter onSubmit ={setSearch} />
<AgGridReact
columnDefs={columns}
rowData={rowData}
pagination={true}
paginationPageSize={20}/>
}
【问题讨论】:
-
最后一个“.then”看起来不对。坦率地说,我不知道你想做什么。我没有看到输入元素,也没有看到类似过滤器的功能。是关于获取数据吗?请考虑将最少的电脑组合在一起来解决您遇到的问题。如有必要,请给我们画一张带有指向元素的文字的图片。谢谢。
标签: javascript reactjs ag-grid ag-grid-react