Reactjs 为什么';输入组件中的设置设置值增量是否为?

Reactjs 为什么';输入组件中的设置设置值增量是否为?,reactjs,react-native,react-state,Reactjs,React Native,React State,我想增加我创建的输入组件中的值,它只需单击一次就可以工作,然后在启动pressHandler的每个按钮上来回切换5和6。为什么会这样 这可能是关于defaultValues数组本身的问题,还是我的setSetsValue完全错误 每次按下按钮后,defaultValues[0].sets.totalSets的值不应该递增吗?还是我错了,因为我认为这是荒谬的 谢谢你的帮助 守则: 让默认值=[ { 集合:{totalSets:“4”}, 作品:{min:“00”,sec:“50”}, 其余:{分

我想增加我创建的输入组件中的值,它只需单击一次就可以工作,然后在启动pressHandler的每个按钮上来回切换5和6。为什么会这样

这可能是关于defaultValues数组本身的问题,还是我的setSetsValue完全错误

每次按下按钮后,defaultValues[0].sets.totalSets的值不应该递增吗?还是我错了,因为我认为这是荒谬的

谢谢你的帮助

守则:

让默认值=[
{
集合:{totalSets:“4”},
作品:{min:“00”,sec:“50”},
其余:{分钟:“00”,秒:“30”},
},
];
常量[SetValue,setSetsValue]=useState(默认值[0].sets.totalSets);
常量pressHandler=()=>{
defaultValues[0].sets.totalSets=
parseInt(默认值[0].sets.totalSets)+1;
setSetsValue(默认值[0].sets.totalSets.toString());
};看看这个例子

让valueA=1;
console.log(valueA)//日志值
常量处理程序=()=>{
valueA=valueA+1;//增加值
setAnyStateValue();//更新状态
};
如果调用
handler()
100次
日志结果为:1
为什么日志不增加???
因为
handler()
将通过函数
setAnyStateValue()
更新状态,并且每次更新状态时,组件
都会再次重新渲染
并再次声明值a
让值a=1

如何解决这个问题

独奏一号

setSetsValue(x=>x+1)//这将基于上一个值加上一个值更新值
解决方案二

const pressHandler=()=>{
setSetsValue(parseInt(setsValue)+1);
};

如何将defaultValue更改为value?