You can use another state object to maitain the checked state of the permissions.
Here is how you add that state
this.state = { schemas: [], checkedPermissions: [] }
and here is how you can maitain that state
CheckPermissions(permissionID) { const isChecked = this.state.checkedPermissions.some(a => a === permissionID); if (isChecked) { this.setState({ checkedPermissions: this.state.checkedPermissions.filter(a => a !== permissionID) }) } else { const data = this.state.checkedPermissions; data.push(permissionID); this.setState({ checkedPermissions: data }); } }
check out demo here