Javascript 更新过程中控制复选框的最佳方法
假设我有一张表格要寄。它有复选框。布尔类型,接收0和1。创建如下逻辑Javascript 更新过程中控制复选框的最佳方法,javascript,reactjs,checkbox,Javascript,Reactjs,Checkbox,假设我有一张表格要寄。它有复选框。布尔类型,接收0和1。创建如下逻辑 "is_has_n": values.is_has_n === true ? 1 : 0, 如果真1和假0,则返回值1和0。 在我写这篇文章时,它工作正常。如果我想编辑这篇文章,我有一些问题。所以这个复选框以前是正确的,现在对我来说应该是错误的。所以我可以在编辑文章时取消选中复选框。 我有以下表格: { data.is_has_n === 1 ? ( <Form.Check onChange
"is_has_n": values.is_has_n === true ? 1 : 0,
如果真1和假0,则返回值1和0。
在我写这篇文章时,它工作正常。如果我想编辑这篇文章,我有一些问题。所以这个复选框以前是正确的,现在对我来说应该是错误的。所以我可以在编辑文章时取消选中复选框。
我有以下表格:
{
data.is_has_n === 1 ?
(
<Form.Check
onChange={handleChange}
name="is_has_n"
defaultChecked={true}
isInvalid={touched.is_has_n&& !!errors.is_has_n}
type="checkbox"
label="Label
/>
) :
(
<Form.Check
onChange={handleChange}
name="is_has_n"
defaultChecked={false}
isInvalid={touched.is_has_n&& !!errors.is_has_n}
type="checkbox"
label="Label
/>
)
还有我的把手转换功能
if (name === "dangerous_status") {
console.log(isChecked);
setFieldValue(name, isChecked);
if (isChecked) {
console.log("dangerous_status", true);
setIsDangerous(true);
} else {
setIsDangerous(false);
console.log("dangerous_status", false);
}
}
问题似乎不清楚,但我认为应该使用受控组件,从而用状态控制输入字段值。参考 值将输入绑定到由handleChange更改的状态字段inputValue。控制inputValue的值,以控制在输入字段中显示的内容
if (name === "dangerous_status") {
console.log(isChecked);
setFieldValue(name, isChecked);
if (isChecked) {
console.log("dangerous_status", true);
setIsDangerous(true);
} else {
setIsDangerous(false);
console.log("dangerous_status", false);
}
}