Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | import React, { useEffect, useState } from "react"; import { LoadingTip, ErrorTip } from "../tips"; import { CascaderLoadingProps } from "./CascaderProps"; export function CascaderLoading({ onLoad }: CascaderLoadingProps) { const [error, setError] = useState(false); useEffect(() => { handleLoad(); }, []); // eslint-disable-line react-hooks/exhaustive-deps async function handleLoad() { setError(false); try { await onLoad(); } catch (_) { setError(true); } } if (error) { return <ErrorTip onRetry={handleLoad} />; } return <LoadingTip />; } |