|
@@ -8,11 +8,12 @@ import { get } from "../../request";
|
|
|
|
|
|
|
|
import DictContent from "./DictContent";
|
|
import DictContent from "./DictContent";
|
|
|
|
|
|
|
|
-interface IWidgetDictSearch {
|
|
|
|
|
|
|
+interface IWidget {
|
|
|
word: string | undefined;
|
|
word: string | undefined;
|
|
|
|
|
+ compact?: boolean;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-const Widget = (prop: IWidgetDictSearch) => {
|
|
|
|
|
|
|
+const Widget = ({ word, compact = false }: IWidget) => {
|
|
|
const defaultData: IWidgetDictContentData = {
|
|
const defaultData: IWidgetDictContentData = {
|
|
|
dictlist: [],
|
|
dictlist: [],
|
|
|
words: [],
|
|
words: [],
|
|
@@ -21,23 +22,22 @@ const Widget = (prop: IWidgetDictSearch) => {
|
|
|
const [tableData, setTableData] = useState(defaultData);
|
|
const [tableData, setTableData] = useState(defaultData);
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
|
- console.log("useEffect");
|
|
|
|
|
- const url = `/v2/dict?word=${prop.word}`;
|
|
|
|
|
- console.log("url", url);
|
|
|
|
|
- get(url)
|
|
|
|
|
- .then((response) => {
|
|
|
|
|
- const json = response as unknown as IApiDictContentData;
|
|
|
|
|
- console.log("data", json);
|
|
|
|
|
|
|
+ if (typeof word === "undefined") {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ const url = `/v2/dict?word=${word}`;
|
|
|
|
|
+ get<IApiDictContentData>(url)
|
|
|
|
|
+ .then((json) => {
|
|
|
setTableData(json.data);
|
|
setTableData(json.data);
|
|
|
})
|
|
})
|
|
|
.catch((error) => {
|
|
.catch((error) => {
|
|
|
console.error(error);
|
|
console.error(error);
|
|
|
});
|
|
});
|
|
|
- }, [prop.word, setTableData]);
|
|
|
|
|
|
|
+ }, [word, setTableData]);
|
|
|
|
|
|
|
|
return (
|
|
return (
|
|
|
<>
|
|
<>
|
|
|
- <DictContent data={tableData} />
|
|
|
|
|
|
|
+ <DictContent data={tableData} compact={compact} />
|
|
|
</>
|
|
</>
|
|
|
);
|
|
);
|
|
|
};
|
|
};
|