我有一个简单的React组件:如何通过添加useCallback挂钩来改进这个组件?
import styled from "styled-components"
import React, { useState } from "react"
import { useGetFilteredBooks } from "../../hooks/useGetFilteredBooks"
import { useRecoilState } from "recoil"
import { Books, PageNumber, SearchText } from "../../recoil/globalState"
export const SearchBook = () => {
const [text, setText] = useRecoilState(SearchText)
const [pageNumber, setPageNumber] = useRecoilState(PageNumber)
const [setBooks] = useRecoilState(Books);
const { refetch } = useGetFilteredBooks(text, setBooks, setPageNumber);
const handleOnChange = (event: React.ChangeEvent<HTMLInputElement>) => {
setText(event.target.value)
}
const handleOnSubmit = (e: any) => {
e.preventDefault();
refetch();
}
return (
<>
<form onSubmit={handleOnSubmit}>
<Input value={text} onChange={handleOnChange} placeholder="Enter the name of the book or author" />
<button type="submit">Show</button>
</form>
</>
)
}
const Input = styled.input`
padding: 10px 10px;
width: 300px;
`