设置状态 [反应本机] 后无法编辑输入文本
Can't edit inputText after setting state [react-native]
发送获取请求后,并保存在状态数据中,并显示保存在inputText中的值 我无法再编辑它了。否则,当我的输入清晰时,它可以工作。
这是代码:
第一步我获取提交文本后所需的数据输入input.js
<TextInput
style={[ style.itemInfoMajor, global.alignRight ]}
onFocus={ onFocus }
onChangeText={ this._onChange }
onSubmitEditing={ () => this._onSubmit(network) }
value={ value }
returnKeyType="done"
enablesReturnKeyAutomatically={ true }
clearButtonMode="always"
placeholder={ network }
placeholderTextColor="rgba(255, 255, 255, 0.25)"
autoCorrect={ false }
autoCapitalize="none"
clearTextOnFocus={ true }
/>
在list.js
我在加载应用程序后检索数据。
在那里我设置了获得inputText
值的状态
componentWillMount() {
this._loadInitialState().done();
},
async _loadInitialState() {
try {
const value = await Storage.get('userData');
if (value !== null) {
this.setState({
data: value,
});
}
}
}
下面是我将状态传递给输入组件的地方
<Input
onFocus={ this._handleFocus.bind(this, item) }
value={ value }
ref={ item }
key={ i }
network={ item }
/>
我加入一个小视频来现场观看问题:https://vid.me/8L9k源代码在这里: https://github.com/statiks/statiks-react-native/blob/master/sources/input/index.js
如何编辑此输入的此值?
尝试在getInitialState中设置值:
getInitialState() {
return {
...,
value: this.props.value
};
},
然后,在 textInput 中使用 this.state.value:
<TextInput
...
value={ this.state.value }
... />
然后,更新更改时的值状态:
_onChange(username) {
this.setState({ value: username });
},
看起来您可能将不正确的值作为道具向下传递。你需要传递 this.state.data 而不是 value:
<Input
value={ this.state.data }
ref={ item }
key={ i }
network={ item }
/>
我没有你完整的代码,但我测试了它,它似乎以这种方式为我工作。(您可能需要将父级上数据的初始状态设置为空字符串或数据结构)
我认为_onChange中存在错误。不应该是
_onChange(username) {
this.setState({ username: username });
},
相关文章:
- 角度变量在编辑输入字段之前不显示
- Javascript通过加法编辑输入值
- 在angularJS中使用split()时无法编辑输入
- 用于编辑输入字段的弹出窗口
- 一起编辑输入字段,而不是单独编辑
- HTML5输入颜色,可编辑输入
- TinyMCE 编辑输入值和按钮文本
- 两个用户通过 websocket 编辑输入时出现问题
- 在单击后创建输入时,是否可以准确地在单击发生的位置开始编辑输入
- j可编辑输入类型日期
- 在编辑输入 jQuery 后激活只读返回
- Javascript/JQuery 数据网格,用于在数据表中显示/编辑/输入
- 编辑输入字段时的触发方法
- 可编辑 - 输入字段上的最大长度,模糊时闪烁
- 设置状态 [反应本机] 后无法编辑输入文本
- 如何在 HTML5 中使用 CSS3 在灯箱中显示编辑输入字段
- 使用 Javascript 编辑输入字段的值
- jQuery模板-如何获取用户编辑输入的值
- 带有复选框和可编辑输入框的HTML表单
- 禁用编辑输入框的部分