728x90
์ฒดํฌ ๋ฐ์ค๋ฅผ ์ ํํ๊ณ , ์ ํ๋ ์ฒดํฌ๋ฐ์ค์์ Hash ๋ฅผ ๋ฐํํด์ค์ผํ๋ ์ํฉ์ผ ๋
import { useState } from 'react';
// ... ์ด์ ์ฝ๋ ...
const ExampleComponent = () => {
const [selectedUrlHash, setSelectedUrlHash] = useState<string | null>(null);
const handleCheckboxChange = (urlHash: string) => {
setSelectedUrlHash(urlHash);
};
// ... ์ด์ ์ฝ๋ ...
const relColumnDefs: ColumnDef<IUrlContent>[] = [
{
header: '',
accessorKey: 'urlHash', // Assuming urlHash is a unique identifier
size: 5,
minSize: 5,
maxSize: 5,
enableSorting: false,
cell: ({ row }) => {
const {
original: { urlHash },
} = row;
return (
<input
type="checkbox"
checked={urlHash === selectedUrlHash}
onChange={() => handleCheckboxChange(urlHash)}
/>
);
},
},
// ... ๋๋จธ์ง ์ด ์ ์ ...
];
// ... ์ด์ ์ฝ๋ ...
};
export default ExampleComponent;
return ์์ checkbox ํญ๋ชฉ์ ์ถ๊ฐํ๊ณ ,
์ฒดํฌ ๋ฐ์ค ๋ณ๊ฒฝ ์ด๋ฒคํธ๋ฅผ handleCheckboxChange์ ์ฐ๊ฒฐ,
selectedUrlHash ์ํ์ ์ ์ฅ๋ URL Hash ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ์ ๋ฐํํ ์ ์๋ค.
728x90