--- order: 3 title: zh-CN: 自定义渲染行数据 en-US: Custom datasource --- ## zh-CN 自定义渲染每一个 Transfer Item,可用于渲染复杂数据。 ## en-US Custom each Transfer Item, and in this way you can render a complex datasource. ```tsx import { Transfer } from 'antd'; import type { TransferDirection } from 'antd/es/transfer'; import React, { useEffect, useState } from 'react'; interface RecordType { key: string; title: string; description: string; chosen: boolean; } const App: React.FC = () => { const [mockData, setMockData] = useState([]); const [targetKeys, setTargetKeys] = useState([]); const getMock = () => { const tempTargetKeys = []; const tempMockData = []; for (let i = 0; i < 20; i++) { const data = { key: i.toString(), title: `content${i + 1}`, description: `description of content${i + 1}`, chosen: Math.random() * 2 > 1, }; if (data.chosen) { tempTargetKeys.push(data.key); } tempMockData.push(data); } setMockData(tempMockData); setTargetKeys(tempTargetKeys); }; useEffect(() => { getMock(); }, []); const handleChange = ( newTargetKeys: string[], direction: TransferDirection, moveKeys: string[], ) => { console.log(newTargetKeys, direction, moveKeys); setTargetKeys(newTargetKeys); }; const renderItem = (item: RecordType) => { const customLabel = ( {item.title} - {item.description} ); return { label: customLabel, // for displayed item value: item.title, // for title and filter matching }; }; return ( ); }; export default App; ```