【发布时间】:2022-01-24 19:51:54
【问题描述】:
大家好,我关注code:
const BasicInformation = () => {
const { Panel } = Collapse;
const dataFromBackend = [
{ id: 2, depositeAmt: '500' },
{ id: 3, depositeAmt: '1500' },
];
const totalCount = dataFromBackend
.map((item) => item.depositeAmt)
.reduce((prev, curr) => +prev + +curr, 0);
const onSubmit = (data) => {
console.log(data);
};
return (
<Form onFinish={(e) => onSubmit(e)}>
<Form.List name="users" initialValue={dataFromBackend}>
{(fields, { add }) => {
return (
<>
total Deposit Amount: $ {totalCount}
<Button
onClick={() => {
add();
}}
block
>
Add
</Button>
{fields.map((field, i) => (
<Collapse
key={i}
accordion
>
<Panel header="Amount : ">
<Form.Item
name={[field.name, 'depositeAmt']}
label="Amount"
fieldKey={[field.fieldKey, 'depositeAmt']}
>
<Input />
</Form.Item>
</Panel>
</Collapse>
))}
</>
);
}}
</Form.List>
<Button type="primary" htmlType="submit">
send
</Button>
</Form>
);
};
我从后端dataFromBackend 收到一些日期并减少以获取所有存款金额的计数。
我还有deposit 标签。这个想法是当用户更改存款字段值时,total Deposit Amount: 和 <Panel header="Amount : "> 也应该动态更改。
我尝试了这个,但它没有帮助我解决它:
<Form.Item
name={[field.name, 'depositeAmt']}
label="Amount"
fieldKey={[field.fieldKey, 'depositeAmt']}
>
<Input onChange={(e)=>totalCount + e} />
</Form.Item>
请帮我解决这个问题,非常感谢。
【问题讨论】:
-
add()函数发生了什么
标签: javascript reactjs antd ant-design-pro