Javascript 反应本机-动态更改样式
我有一个使用map方法创建的动态菜单Javascript 反应本机-动态更改样式,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我有一个使用map方法创建的动态菜单 {navigationOptions.map(option => { return ( <TouchableOpacity key={option.code} onPress={() => this.procedureOptionSelected(option.code)} >
{navigationOptions.map(option => {
return (
<TouchableOpacity key={option.code}
onPress={() => this.procedureOptionSelected(option.code)}
>
<Text bold style={header.NavigationBarOption}>
{option.type}
</Text>
</TouchableOpacity>
);
})}
{navigationOptions.map(选项=>{
返回(
此.procedureOptionSelected(option.code)}
>
{option.type}
);
})}
但是,当我按下菜单选项时,我需要一个下划线
让我们假设,我按下了第一个选项。因此,在第一个选项中,必须有一个下划线
但我不知道怎么用英语来表达。
有人能帮我个主意吗
谢谢 您可以将
样式
道具添加到触摸不透明度
中,并检查这是否是如下所示的选中按钮:
<TouchableOpacity
style={{ borderBottomWidth: this.state.selected === option.code ? 1 : 0 }}
onPress={() => this.setState({ selected: option.code })
>
...
</TouchableOpacity>
this.setState({selected:option.code})
>
...
另外,我想您可以使用
this.procedureOptionSelected()
,因为您也在其中设置了选项.code
procedureOptionSelected
可能会将选项设置为state,对吗?因此,在style={header.NavigationBarOption}
中,可以检查当前选项的代码是否与状态中的该值匹配,如果匹配,则将下划线样式添加到样式对象中。