react+antd 给switch设置初始值变量
在react项目使用antd组件中的switch功能,设置初始值为变量,所以需要在 Form.Item 标签上添加一个 valuepropname={初始值}
错误示范:
<Form.Item label="开关">
<Switch defaultChecked={data.type} checkedChildren="开启" unCheckedChildren="关闭" onChange={this.onchange} size="default" />
</Form.Item>
记得加上key值,不然浏览器的控制台会报错
正确示范
<Form.Item label="开关" valuepropname={data.type} key={data.type}>
<Switch defaultChecked={data.type} checkedChildren="开启" unCheckedChildren="关闭" onChange={this.onchange} size="default" />
</Form.Item>
在触发onchange事件的时候改变switch的值
onchange = async (checked) => {
const { data } = this.props;
if (checked === false) {
data.type = 0;
调用接口修改switch状态
} else if (checked === true) {
data.type = 1;
调用接口修改switch状态
}
};