reactjs - Tidak dapat menemukan TData atau TValue dalam pustaka TypeScript tanstack
Saya menggunakan react-table versi 8 yang juga dikenali sebagai Tanstack table. Mengapa jenis TData dan TValue tidak ditemui? Dan apakah cara terbaik untuk menanganinya?
Saya mempunyai satu fungsi yang mengambil hujah jenis Cell. Jika saya hanya menulis fungsi itu seperti ini,
const getCellValue = (cell: Cell<TData, TValue>): void => {
// .. function body
}
Saya mendapat ralat...
Jadi saya menambah 2 argumen jenis seperti ini...
const getCellValue = (cell: Cell<TData, TValue>): void => {
// .. function body
}
Argumen jenis TData dan TValue ini tidak ditemui dalam perpustakaan tanstack.
Apakah penyelesaiannya? Baru dengan TypeScript dan baru dengan Tanstack. Mungkin saya mengimport TData dan TValue secara salah? Mungkin fail jenis Tanstack tidak lengkap? Mungkin saya perlu menggunakan jenis yang berbeza daripada Cell dalam fail saya.
Bersulang
Jawapan #1
Dari sini kami mendapati bahawa:
data: TData[]
Jadi, TData adalah jenis data jadual kami, anda boleh menggunakan antara muka data anda di sini. Contohnya, Order[], Todo[], dan lain-lain.
Jenis jadual generik boleh dilaksanakan seperti berikut:
import {
ColumnDef,
useReactTable,
...
} from "@tanstack/react-table";
interface ReactTableProps<TData> {
data: TData[];
columns: ColumnDef<TData>[];
}
const ReactTable = <TData extends object>({
data,
columns,
}: ReactTableProps<TData>) => {
const table = useReactTable({
data,
columns,
getCoreRowModel: getCoreRowModel(),
});
return (
...
)
}
dan TValue ialah jenis nilai (string, nombor, dan lain-lain).
Berikut adalah contohnya:

