何我为TouchableOpacity组件应用禁用样式?
<TouchableOpacity style={styles.buttonWrapper }
onPress={this.userLogin.bind(this)}
disabled={ !this.state.username || !this.state.password }>
<Text style={styles.buttonText}> Login </Text>
</TouchableOpacity>
答案 0 :(得分:12)
最简单的方法是使用与禁用道具相同的条件。
这样的事情应该有效:
style={!this.state.username || !this.state.password ? styles.disabled : styles.buttonWrapper}
答案 1 :(得分:0)
为React-Native
或React
中的元素设置禁用样式的最佳方法是:
style={
(!this.state.username || !this.state.password)
? {...styles.buttonWrapper, ...styles.buttonDisabled}
: styles.buttonWrapper
}
查看实际操作: codesandbox
使用此示例,您不需要按钮具有重复的样式,只需为backgroundColor
中的禁用按钮定义禁用样式,例如color
或styles.buttonDisabled
。