【发布时间】:2017-10-23 19:50:22
【问题描述】:
我一直在尝试通过添加一些新功能来修改现有代码。
我有这个函数可以根据变量ACCREDITATION_TYPES 呈现一组单选按钮:
createRadioCalibration(name) {
const { id, value, labels } = this.props;
const _t = this.props.intl.formatMessage;
const ACCREDITATION_TYPES = [
[CALIBRATION_ACCREDITED, _t(messages.calibrationAccredited)],
[CALIBRATION_NOT_ACCREDITED, _t(messages.calibrationNotAccredited)]
];
return <FormChoiceGroup
type = "radio"
values = {ACCREDITATION_TYPES.map(mapValueArray)}
key = {`${id}_${name}`}
name = {`${id}_${name}`}
value = {value[name]}
handleChange = {this.handleFieldChangeFn(name)}
/>;
}
默认情况下,收音机都未选中。单击此功能时会启动:
handleFieldChangeFn(name) {
return (e) => {
const { handleFieldChange, id } = this.props;
handleFieldChange(id, name, e.target.value);
};
}
表单呈现如下:
render () {
const FIELDS = {
[CALIBRATION]: this.createRadioCalibration(CALIBRATION),
};
return (
<div className="">
<label>{_t(messages.calibration)}</label>
{ FIELDS[CALIBRATION] }
如何选择我想要的任何选项作为初始状态?现在只有两个选项,但如果有五个呢?
另外,如何根据表单其他元素(即下拉菜单)的onChange 事件来操作无线电选择?
【问题讨论】:
-
我是不是因为提出问题而被扣分?