Javascript 在React中显示开关值
我的react应用程序中有一个非常简单的问题。我需要打开开关值,如果它为真,否则为假。我已将该值初始化为true,但开关仍处于关闭状态 请检查此代码沙盒链接Javascript 在React中显示开关值,javascript,reactjs,ecmascript-6,formik,react-material,Javascript,Reactjs,Ecmascript 6,Formik,React Material,我的react应用程序中有一个非常简单的问题。我需要打开开关值,如果它为真,否则为假。我已将该值初始化为true,但开关仍处于关闭状态 请检查此代码沙盒链接 }label=“Triage?”labelPlacement=“end”style={{display:“flex”, justifyContent:“flex end”}}/> 您必须使用选中的属性 ... <Switch checked={values.buy} color="primary" />
}label=“Triage?”labelPlacement=“end”style={{display:“flex”,
justifyContent:“flex end”}}/>
您必须使用选中的属性
...
<Switch checked={values.buy} color="primary" />
开关的开/关状态由“已检查”属性控制。您可以在FormControlLabel和Switch组件中设置它
以下是在FormControlLabel中设置它的代码:
<Grid item xs={12} md={6}>
<FormControlLabel
name="buy"
variant="outlined"
value={values.buy}
checked={values.buy}
onChange={handleChange}
onBlur={handleBlur}
control={<Switch color="primary" />}
label="Triage?"
labelPlacement="end"
style={{ display: "flex", justifyContent: "flex-end" }}
/>
</Grid>
下面是第二个选项,在Switch中设置:
<Grid item xs={12} md={6}>
<FormControlLabel
name="buy"
variant="outlined"
value={values.buy}
onChange={handleChange}
onBlur={handleBlur}
control={<Switch color="primary" checked={values.buy} />}
label="Triage?"
labelPlacement="end"
style={{ display: "flex", justifyContent: "flex-end" }}
/>
</Grid>
这两个属性似乎都可以正常工作。这不是负责开关状态的已选中的属性吗?其他属性如何?value={values.buy}onChange={handleChange}onBlur={handleBlur}。我应该把它们转移到内存中吗?@Robert:只需更改当前代码中选中的的值
<Grid item xs={12} md={6}>
<FormControlLabel
name="buy"
variant="outlined"
value={values.buy}
onChange={handleChange}
onBlur={handleBlur}
control={<Switch color="primary" checked={values.buy} />}
label="Triage?"
labelPlacement="end"
style={{ display: "flex", justifyContent: "flex-end" }}
/>
</Grid>