diff --git a/src/components/EditorSidePanel/TablesTab/SearchBar.jsx b/src/components/EditorSidePanel/TablesTab/SearchBar.jsx
index 4ef926b..49ec8f6 100644
--- a/src/components/EditorSidePanel/TablesTab/SearchBar.jsx
+++ b/src/components/EditorSidePanel/TablesTab/SearchBar.jsx
@@ -1,30 +1,23 @@
-import { useState } from "react";
-import { useSelect, useTables } from "../../../hooks";
+import { useEffect, useMemo, useState } from "react";
+import { useSelect } from "../../../hooks";
import { AutoComplete } from "@douyinfe/semi-ui";
import { IconSearch } from "@douyinfe/semi-icons";
-export default function SearchBar() {
- const { tables } = useTables();
+export default function SearchBar({ tables }) {
const { setSelectedElement } = useSelect();
const [searchText, setSearchText] = useState("");
- const [filteredResult, setFilteredResult] = useState(
- tables.map((t) => t.name)
+ const filteredTable = useMemo(
+ () => tables.map((t) => t.name).filter((i) => i.includes(searchText)),
+ [tables, searchText],
);
- const handleStringSearch = (value) => {
- setFilteredResult(
- tables.map((t) => t.name).filter((i) => i.includes(value))
- );
- };
-
return (