@@ -400,7 +405,7 @@ export default function Page() {
placeholder="Search by name..."
startContent={
}
value={filterValue}
- onClear={() => setFilterValue("")}
+ onClear={() => onClear()}
onValueChange={onSearchChange}
/>
@@ -483,23 +488,22 @@ export default function Page() {
{selectedKeys === "all"
? "All items selected"
- : `${selectedKeys.size} of ${items.length} selected`}
+ : `${selectedKeys.size} of ${filteredItems.length} selected`}
-
diff --git a/apps/docs/content/components/table/use-case.ts b/apps/docs/content/components/table/use-case.ts
index b7aa7569e..e450b894d 100644
--- a/apps/docs/content/components/table/use-case.ts
+++ b/apps/docs/content/components/table/use-case.ts
@@ -360,8 +360,6 @@ export default function App() {
});
const [page, setPage] = React.useState(1);
- const pages = Math.ceil(users.length / rowsPerPage);
-
const hasSearchFilter = Boolean(filterValue);
const headerColumns = React.useMemo(() => {
@@ -387,6 +385,8 @@ export default function App() {
return filteredUsers;
}, [users, filterValue, statusFilter]);
+ const pages = Math.ceil(filteredItems.length / rowsPerPage);
+
const items = React.useMemo(() => {
const start = (page - 1) * rowsPerPage;
const end = start + rowsPerPage;
@@ -452,7 +452,7 @@ export default function App() {
return cellValue;
}
}, []);
-
+
const onNextPage = React.useCallback(() => {
if (page < pages) {
setPage(page + 1);
@@ -479,6 +479,11 @@ export default function App() {
}
}, []);
+ const onClear = useCallback(()=>{
+ setFilterValue("")
+ setPage(1)
+ },[])
+
const topContent = React.useMemo(() => {
return (
@@ -489,7 +494,7 @@ export default function App() {
placeholder="Search by name..."
startContent={
}
value={filterValue}
- onClear={() => setFilterValue("")}
+ onClear={() => onClear()}
onValueChange={onSearchChange}
/>
@@ -572,23 +577,22 @@ export default function App() {
{selectedKeys === "all"
? "All items selected"
- : \`\${selectedKeys.size} of \${items.length} selected\`}
+ : \`\${selectedKeys.size} of \${filteredItems.length} selected\`}
-
+
Previous
-
+
Next
@@ -684,7 +688,6 @@ export default function App() {
});
const [page, setPage] = useState(1);
- const pages = Math.ceil(users.length / rowsPerPage);
const hasSearchFilter = Boolean(filterValue);
@@ -711,6 +714,8 @@ export default function App() {
return filteredUsers;
}, [users, filterValue, statusFilter]);
+ const pages = Math.ceil(filteredItems.length / rowsPerPage);
+
const items = React.useMemo(() => {
const start = (page - 1) * rowsPerPage;
const end = start + rowsPerPage;
@@ -776,7 +781,7 @@ export default function App() {
return cellValue;
}
}, []);
-
+
const onNextPage = React.useCallback(() => {
if (page < pages) {
setPage(page + 1);
@@ -803,6 +808,11 @@ export default function App() {
}
}, []);
+ const onClear = useCallback(()=>{
+ setFilterValue("")
+ setPage(1)
+ },[])
+
const topContent = React.useMemo(() => {
return (
@@ -813,7 +823,7 @@ export default function App() {
placeholder="Search by name..."
startContent={
}
value={filterValue}
- onClear={() => setFilterValue("")}
+ onClear={() => onClear()}
onValueChange={onSearchChange}
/>
@@ -896,23 +906,22 @@ export default function App() {
{selectedKeys === "all"
? "All items selected"
- : \`\${selectedKeys.size} of \${items.length} selected\`}
+ : \`\${selectedKeys.size} of \${filteredItems.length} selected\`}
-
+
Previous
-
+
Next