【发布时间】:2016-11-06 00:16:26
【问题描述】:
我想在选择“全选”但无法使其工作时选中/取消选中所有复选框。我正在使用 material-ui 组件和 redux-form。我的计划是使用 formValueSelector API 获取 checkAll 字段值,并基于此设置复选框 A 和 B 值。也尝试使用 value prop,但仍然没有运气。
import React from 'react';
import { connect } from 'react-redux';
import { Field, reduxForm, formValueSelector } from 'redux-form';
import { Checkbox } from 'redux-form-material-ui';
let Form = (props) => {
return (
<form>
<Field name="checkAll" id="checkAll" label="Check All" component={ Checkbox } />
<Field name="a" label="A" component={ Checkbox } checked={ props.checkAll } />
<Field name="b" label="B" component={ Checkbox } checked={ props.checkAll } />
</form>
);
};
Form = reduxForm({
form: 'Form'
})(AddReturnModal);
// Decorate with connect to read form values
const selector = formValueSelector('Form'); // <-- same as form name
Form = connect(
(state) => {
const checkAll = selector(state, 'checkAll');
return {
checkAll
};
}
)(Form);
export default Form;
【问题讨论】: