我正在React应用程序中设置Redux表单,该表单具有双重列表框,我无法将值从一个框转移到另一个框,反之亦然。
我正在做复选框的其他事情是,当我触摸/单击页面加载页面时,它不会发布页面值,在两种情况下都是true / false,但默认情况下不是false。
用于双重列表框
<Field
name="list"
type="select"
onChange={this.handleOnMove}
component={this.renderReactSelectWrapper}
/>
renderReactSelectWrapper = props => (
<DualListBox
value={props.input.value}
onChange={props.input.onChange}
onBlur={props.input.onBlur(props.input.value)}
options={available}
selected={selected}
placeholder="Select"
simpleValue
icons={{
moveLeft: <span key={0}><</span>,
moveAllLeft: [<span key={1}><<</span>],
moveRight: <span key={2}>></span>,
moveAllRight: [<span key={4}>>></span>],
moveDown: <span key={5}>↓</span>,
moveUp: <span key={6}>↑</span>
}}
/>
);
对于复选框/开关
<Field
name="available"
id="available"
component={this.renderToggleInput}
/>
renderToggleInput = field => ( <Switch checked={field.input.value} onChange={field.input.onChange} /> );
我需要将值从一个框转移到另一个框,对于复选框/开关,我需要在页面加载时发布。
答案 0 :(得分:0)
我正在解决同样的问题。我认为问题是您没有正确更新所选阵列。以下代码对我来说对所选选项有效。
<DualListBox
options={options}
value={this.props.input.value}
onChange={this.props.input.onChange}
selected={[...this.props.input.value]}
/>