首页 > 解决方案 > 在文本输入挂钩上设置初始值

问题描述

如果我必须将名称输入字段的初始值设置为:

const [name, setName] = useState(userProfileDataFetched.name); //This doesn't show anything on input field

代替

const [name, setName] = useState('test'); // This works

getRequest 在哪里(仅供参考)

const [userProfileDataFetched, setUserProfileDataFetched] = useState('')

也供参考:userProfileDataFetched 设置为 setUserProfileDataFetched(response.data);

这样动态值 getRequest.name 在输入文本中可见。

然后允许它在输入文本上更改其值

所以,保留输入标签,如:

 <TextInput style={styles.input} name={Name}
                          value={name}
     onChangeText={value=>console.log(value)}/>
    

我们如何使用钩子设置初始动态值,然后让它改变它。文本不可见,否则,如果我将其写在字段上,则其不可编辑。

标签: reactjsreact-nativereact-hooks

解决方案


您可以使用 useEffect。

useEffect(() => {
  if(userProfileDataFetched.name) {
    setName(userProfileDataFetched.name)
  }
}, [userProfileDataFetched])

推荐阅读