删除项目时 ArrayInput 不会触发 onChange 函数
ArrayInput doesn't trigger onChange function when I remove item
我添加了一个 onChange
属性。当我添加一个新元素时它工作得很好,但是如果我删除一个元素,这个函数就不会被触发。
<ArrayInput
source="names"
label={'Names'}
onChange={updateNames}
>
<SimpleFormIterator
className={classes.iteratorFormItem}
>
<TextInput
label=""
source="value"
validate={maxLength(MAX)}
/>
</SimpleFormIterator>
</ArrayInput>
我不明白为什么当我删除一个元素时 onChange
没有触发,因为在这种情况下数组被修改了。
onChange
不是 react-admin 的 <ArrayInput>
支持的道具。如果它在用户更新子记录时起作用,那是偶然的。文档没有提及它(参见 https://marmelab.com/react-admin/Inputs.html#array-inputs)。
现在,您似乎想在数据被用户更改时对其进行处理。为什么不使用 parse
选项呢? (https://marmelab.com/react-admin/Inputs.html#common-input-props).
我添加了一个 onChange
属性。当我添加一个新元素时它工作得很好,但是如果我删除一个元素,这个函数就不会被触发。
<ArrayInput
source="names"
label={'Names'}
onChange={updateNames}
>
<SimpleFormIterator
className={classes.iteratorFormItem}
>
<TextInput
label=""
source="value"
validate={maxLength(MAX)}
/>
</SimpleFormIterator>
</ArrayInput>
我不明白为什么当我删除一个元素时 onChange
没有触发,因为在这种情况下数组被修改了。
onChange
不是 react-admin 的 <ArrayInput>
支持的道具。如果它在用户更新子记录时起作用,那是偶然的。文档没有提及它(参见 https://marmelab.com/react-admin/Inputs.html#array-inputs)。
现在,您似乎想在数据被用户更改时对其进行处理。为什么不使用 parse
选项呢? (https://marmelab.com/react-admin/Inputs.html#common-input-props).