Редактируемый текст в React Native - PullRequest
0 голосов
/ 06 мая 2020

Я новичок в React Native и мне нужна помощь. Я пытаюсь обработать TextInput, где пользователь может обновлять текстовое значение по своему усмотрению. Например, если пользователь создает папку с именем «Bar», но позже пользователь решает изменить имя на «Bar1». Как я могу это сделать ???

Вот мой код: где value = {prosp.children} - это текстовое значение «Bar». onChangeText = {(text) => handleText (text)}, здесь текст пока не определен, но позже это будет мое обновление текста «Bar1» или что угодно, что пишет пользователь.

import React, { useState } from "react";
import { View, TextInput} from "react-native";
import styles from "../globalStyles/Styles";

const FolderList = (props) => {
  const handleText = (value, text) => {};

  return (
    <View style={styles.homeRowFolder}>
      <View style={styles.iconAndText}>
        <TextInput
          value={props.children}
          onChangeText={(text) => handleText(text)}
          style={styles.textdisplay}
        ></TextInput>
      </View>
    </View>
  );
};

export default FolderList;

Я также хочу использовать перехватчики реакции. Большое спасибо за помощь заранее. Цените.

1 Ответ

0 голосов
/ 06 мая 2020

В функции обработчика событий ожидается два параметра. value и text

  const handleText = (value, text) => {};

Но из обработчика события передается только один.

onChangeText={(text) => handleText(text)}

Вам нужно изменить handleText так, чтобы он принимал только переданный текст, и это должно работать.

const handleText = (text) => { 
    console.log(text); // should print the updated text
};

Вам не нужно использовать хуки для обработки этого взаимодействия. Но если вы что-то делаете с данными, например, сохраняете их в состоянии, вы можете использовать для этого подходящий хук.

...