react hooks 获取数组输入框值的总和
可以使用`useState`和`useEffect`来实现受控输入框,并计算数组输入框的总和。下面是一个示例代码:
```jsx
import React, { useState, useEffect } from 'react';
const InputSum = () => {
const [numbers, setNumbers] = useState([]);
const [sum, setSum] = useState(0);
const handleInputChange = (index, value) => {
const newNumbers = [...numbers];
newNumbers[index] = value;
setNumbers(newNumbers);
reacthooks理解 };
useEffect(() => {
const newSum = duce((acc, currentValue) => {
return acc + Number(currentValue || 0);
}, 0);
setSum(newSum);
}, [numbers]);
return (
<div>
{numbers.map((number, index) => (
<input
key={index}
type="number"
value={number || ''}
onChange={(e) => handleInputChange(index, e.target.value)}
/>
))}
<p>总和:{sum}</p>
</div>
);
};
export default InputSum;
```
在这个示例中,我们使用`numbers`状态来保存用户输入的值,每次输入框的值变化时,都会更新`numbers`状态。然后,使用`useEffect`来计算`numbers`数组的总和,并更新`sum`状态。
这样,在页面渲染的过程中,每次数组输入框的值变化,都会重新计算数组的总和,并更新页面上显示的总和值。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论