Javascript 如何在reactJS中减少和增加复选框中的值?
我有:Javascript 如何在reactJS中减少和增加复选框中的值?,javascript,reactjs,Javascript,Reactjs,我有: class App extends React.PureComponent { constructor(props) { super(props); this.state = { total: 0, groupSelected:false }; } } {check1&&size(check1)( 地图(勾选1,(ind,i)=>{ 返回( this.setState({gr
class App extends React.PureComponent {
constructor(props) {
super(props);
this.state = {
total: 0,
groupSelected:false
};
}
}
{check1&&size(check1)(
地图(勾选1,(ind,i)=>{
返回(
this.setState({groupSelected:!groupSelected})
onChange={(e)=>{this.add(e.target.value,ind.size)}
/>
)
)
添加(值、大小){
const{groupSelected}=this.state;
if(groupSelected==true){
const total=this.state.total-parseInt(大小);
这是我的国家({
全部的
});
}否则{
const total=this.state.total+parseInt(大小);
这是我的国家({
全部的
});
}
}
这就是我写的,如果用户点击一个复选框,一个值会增加,如果他点击另一个复选框,值会减少
我想根据复选框增加和减少总数。请帮助。考虑使用以下内容更新您的状态:
{check1 && size(check1) ? (
map(check1, (ind, i) => {
return (
<AvCheckbox
key={i}
value={ind.id}
onClick={() => this.setState({ groupSelected: !groupSelected })
onChange={(e) => {this.add(e.target.value, ind.size)}}
/>
)
)
add(value, size) {
const { groupSelected } = this.state;
if (groupSelected === true) {
const total = this.state.total - parseInt(size);
this.setState({
total,
});
} else {
const total = this.state.total + parseInt(size);
this.setState({
total,
});
}
}
您的代码可能需要一个不错的干关。您能否通过单击一个复选框递增,然后单击另一个递减来澄清您的意思。您的代码片段似乎也不完整。您映射的是什么?您是否还可以包含
AvCheckbox
组件代码。
this.setState(prevState => {
return {total: prevState.total + parseInt(size)}
})