我有一个像下面这样的自定义组件
<Input
value={value}
style={styles.input}
secureTextEntry={passwordInput && !this.state.showPassword}
onChangeText={onChangeText}
autoCapitalize={disableAutoCapitalize ? 'none' : 'words'}
autoCorrect={!disableAutoCorrect}
editable={!notEditable}
/>
但是当我尝试将autoCapitalize设置为单词却不起作用时,为什么呢?
<InputField
disableAutoCapitalize={false}
disableAutoCorrect
/>
答案 0 :(得分:2)
disableAutoCapitalize
传递为道具。
您应该使用this.props.disableAutoCapitalize
。
<Input
value={value}
style={styles.input}
secureTextEntry={passwordInput && !this.state.showPassword}
onChangeText={onChangeText}
autoCapitalize={this.props.disableAutoCapitalize ? 'none' : 'words'}
autoCorrect={!disableAutoCorrect}
editable={!notEditable}
/>
答案 1 :(得分:1)
它可以在iOS上运行,但不能在Android(Galaxy S9)上运行,它看起来像是一个本机错误。
答案 2 :(得分:0)
它是一个响应本机错误,已在0.61.5之后修复。 简而言之,如果可能,请删除keyboardType,然后autoCapitaliz将为您服务
请参阅以下问题以了解背景知识: https://github.com/facebook/react-native/issues/27510 https://github.com/facebook/react-native/issues/8932