|
@@ -24,6 +24,7 @@ const InfiniteScrollContent = ({ hasMore }: { hasMore?: boolean }) => {
|
|
|
|
|
|
const Detail = () => {
|
|
|
const [data, setData] = useState<ChildItem[]>([]);
|
|
|
+ const [search, setSearch] = useState<string>("");
|
|
|
const [hasMore, setHasMore] = useState(false);
|
|
|
async function loadMore() {
|
|
|
getData();
|
|
@@ -40,10 +41,23 @@ const Detail = () => {
|
|
|
}
|
|
|
};
|
|
|
|
|
|
+ const renderData = React.useMemo(() => {
|
|
|
+ if (!search) {
|
|
|
+ return data;
|
|
|
+ }
|
|
|
+ return data.filter((item) => {
|
|
|
+ return item.renter_uid.includes(search);
|
|
|
+ });
|
|
|
+ }, [data, search]);
|
|
|
+
|
|
|
return (
|
|
|
<div className={styles.detail}>
|
|
|
<div className={clsx("m-[.15rem] flex items-center", styles.searchbox)}>
|
|
|
- <Input placeholder="Por favor, insira o ID"></Input>
|
|
|
+ <Input
|
|
|
+ placeholder="Por favor, insira o ID"
|
|
|
+ onChange={(evt) => setSearch(evt)}
|
|
|
+ value={search}
|
|
|
+ ></Input>
|
|
|
<div className="ml-[.1rem]">
|
|
|
<Button size="middle">
|
|
|
<i className="iconfont icon-sousuo2"></i>
|
|
@@ -63,7 +77,7 @@ const Detail = () => {
|
|
|
</div>
|
|
|
</div>
|
|
|
<List>
|
|
|
- {data.map((item, index) => (
|
|
|
+ {renderData.map((item, index) => (
|
|
|
<List.Item key={index}>
|
|
|
<div className={clsx(styles.item)}>
|
|
|
<div>
|