We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
我在antd(4.0) form中使用一个自定义组件, 该自定义组件每次加载会异步加载一些数据
const MeetingTab = ({ onChange, value = 0 }) => { const [selectTab, setSelectTab] = useState<number>(value) const [meetingRooms, setMeetingRooms] = useState<number[]>([]) const handleMettingTabChange = useCallback( value => { setSelectTab(value) if (onChange) { onChange(value) } }, [onChange] ) useEffect(() => { if (!meetingRooms.length) { //异步请求 request().then(data => { setMeetingRooms(data) }) } }, [meetingRooms]) const renderTab = useMemo(() => { return meetingRooms.map((value, index) => { const isActive = selectTab === value ? "active" : "" return ( <li onClick={() => handleMettingTabChange(value)} key={index} className={isActive}> {value} </li> ) }) }, [handleMettingTabChange, meetingRooms]) return <div>{renderTab}</div> }
当使用form.resetFields时, 会导致该组件会重新加载一次, 导致多了一次请求! 当然通过props可以解决这一问题,但是我只想在组件里进行异步请求, 又不想在resetFields时再请求一次, 有什么好的办法吗?
The text was updated successfully, but these errors were encountered:
reset 会重置整个 Field 以消除之前存在的任何副作用,受控组件数据管理应该是纯粹的。如果就是要 mount 就加载,可以用第三方库管理请求做 cachable。比如 swr
Sorry, something went wrong.
No branches or pull requests
我在antd(4.0) form中使用一个自定义组件, 该自定义组件每次加载会异步加载一些数据
当使用form.resetFields时, 会导致该组件会重新加载一次, 导致多了一次请求!
当然通过props可以解决这一问题,但是我只想在组件里进行异步请求, 又不想在resetFields时再请求一次, 有什么好的办法吗?
The text was updated successfully, but these errors were encountered: