在调用函数上设置输入值 - React Native

Setting input values on call function - React Native

我在将文本输入(我从 API 中获取)的值保存到数组时遇到了问题。目前我可以保存这些值,但如果我尝试编辑一个文本输入值,它将保存新值并仍然保留旧值。我只想在 'onChangeText' 结束时保存最新值。

感谢任何建议!

这是我的代码:

textfieldsObject = () => {
    const obje = this.props.navigation.state.params.item;
    var keyvalue_to_json = JSON.parse(obje.keyValues);
    var textinputName = [];
    var foundTextFields = [];

    for (let i = 0; i < keyvalue_to_json.inputFields.length; i++) {
        if (keyvalue_to_json.inputFields[i].type === 'textfield') {
            foundTextFields.push(<TextInput onEndEditing={(e) => {               
                    keyvalue_to_json.inputFields[i].inputValues = e.nativeEvent.text;
                    this.myInputFields.myTextFields.push(keyvalue_to_json.inputFields[i])
                }}
            >{keyvalue_to_json.inputFields[i].placeholderText}</TextInput>)
        }
    }
    return (
            <View>
                {foundTextFields}
            </View>
    )
}

您不能在每次编辑文本输入时都进行推送。你会得到你所做的每一个编辑的数组,我认为这不是你想要的。
也许是这样:

this.myInputFields.myTextFields.[i]=keyvalue_to_json.inputFields[i]