From d3d8905299f0d0215ce7bd2aa1cc8bf630f51de7 Mon Sep 17 00:00:00 2001 From: 2betop <2betop.cn@gmail.com> Date: Fri, 12 Jun 2020 11:15:55 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E4=B8=80=E4=B8=8BitemRender?= =?UTF-8?q?=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/ArrayInput.tsx | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/src/components/ArrayInput.tsx b/src/components/ArrayInput.tsx index 98e97a07..b0ad9adb 100644 --- a/src/components/ArrayInput.tsx +++ b/src/components/ArrayInput.tsx @@ -13,12 +13,12 @@ export interface ArrayInputProps extends ThemeProps, LocaleProps { value?: Array; onChange?: (value: Array) => void; placeholder: string; - itemRender: ( - value: any, - onChange: (value: any) => void, - index: number, - disabled?: boolean - ) => JSX.Element; + itemRender: (props: { + value: any; + onChange: (value: any) => void; + index: number; + disabled?: boolean; + }) => JSX.Element; itemInitalValue?: any; maxLength?: number; minLength?: number; @@ -33,9 +33,15 @@ export interface ArrayInputProps extends ThemeProps, LocaleProps { export class ArrayInput extends React.Component { static defaultProps = { placeholder: '<çİş>', - itemRender: (value: any, onChange: (value: any) => void, index: number) => ( - - ) + itemRender: ({ + value, + onChange + }: { + value: any; + onChange: (value: any) => void; + index: number; + disabled?: boolean; + }) => }; id: string = guid(); @@ -144,12 +150,12 @@ export class ArrayInput extends React.Component { ) : null} - {itemRender( + {itemRender({ value, - this.handleItemOnChange.bind(this, index), + onChange: this.handleItemOnChange.bind(this, index), index, disabled - )} + })} {removable !== false && !disabled &&