【发布时间】:2016-11-03 18:44:21
【问题描述】:
我想更改我的<Picker.Item>s 的标签 <Picker>,例如当语言发生变化时,由另一个按钮触发 (react-redux)。
key 和 value 应该保持不变,只是 label 发生变化。
不幸的是,结果是重新渲染(?),selectedValue 更改为第一个 <Picker.Item>s(不是默认值!)。
<Picker
selectedValue={this.props.myValue}
onValueChange={(newValue) => this.props.setMyValue(newValue);}}>
{this.props.myOptions.map((s, i) => {
let l = modify(s);
return <Picker.Item key={i} value={s} label={l}/>
})}
</Picker>
只要label 发生更改,就会出现问题,例如通过在每次更改时添加当前日期:
export default function modify(string) {
// return string; // works
return string + '_i_change_' + new Date(); // doesn't work
}
我感谢每一个建议。 提前致谢!
【问题讨论】:
标签: javascript android reactjs react-native redux