我已经尝试在TextArea中使用defaultValue和value,但它不允许用户更改值。
textarea的父div为redux-form Field,尝试将redux状态下存储的值传递给textarea
<Field
name="message"
component={renderField}
...
onChange={ (e: any) =>
triggerHoldResponse(e.target.value, conversation.id)
}
/>
const renderField = ({input, type, meta: { error }}: any) => (
<div>
<TextArea
className={styles.textarea}
{...input}
placeholder={placeholder}
type={type}
/>
<div className={styles.errorSignal}>
{error}
</div>
</div>
);
4条答案
按热度按时间fzwojiic1#
SUI TextArea是
Form.TextArea
的基类,两者都使用相同的属性value
来设置textarea
的默认文本值。以下代码适用于我:
value={mesg}
设置textarea
的默认状态(已设置)。*xiozqbni2#
如果使用的是语义UIReact,则可以使用Form.Field标记。可以设置默认值并使用以下命令执行操作
“defaultValue ='尝试显示的默认文本'
您可以看到下面的窗体.字段示例。
注意:默认值将覆盖您的占位符,并且在单击文本区域时不会删除默认值。如果您只想显示文本区域的信息,我将使用占位符。
7fhtutme3#
你可以将
Textarea
输入的值链接到state
中的值,这样你就可以设置文本的默认文本,同时也允许状态在值更新时更新,你可以使用linkstate来实现这一点。此外,如果您的商店中已经有日期,则可以在
ComponentDidMount
生命周期事件中设置它。设置linked state value
的值,因此设置默认值。文档中的使用示例:
https://github.com/developit/linkstate
eeq64g8w4#
另一种方法是使用textarea标记,因为我无法找到合适的解决方案
示例:
或通过React终态
...