javascript - 即使我试图保持文本区域失去焦点

标签 javascript html reactjs redux

我遇到了一个非常有趣的情况。 这是我的组件:

export const checkbox = ({ data }) => {
    const inputRef = useRef(null);
    
    console.log(inputRef); // Does not appear
    return (
            <FormGroup>
                {data.data.map(item => (
                        <FormGroup>
                            <Input
                                ref={inputRef}
                            />
                        </FormGroup>
            </FormGroup>
    );
};

它是其他组件的子组件,它基本上获取值并提交到表单。

但是没有用.. 我怎样才能解决这个问题?我只需要它来保持焦点,这样我就可以继续打字。我应该使用 React.memo()为了这? 另外,请注意,我已经检查了我能找到的所有引用资料,但没有任何帮助。我为此花了 3 天。

最佳答案

根据我们的聊天,根本原因是具有动态 key 属性的元素,该属性在每次渲染时都会发生变化。这导致每次更改事件都会呈现一个新的 textarea 元素,并且新元素没有焦点。

解决方案是使用在渲染之间不会改变的确定性 key 。

关于javascript - 即使我试图保持文本区域失去焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58921559/

相关文章:

javascript - Shiny 数据表中的单选按钮,用于一列中的 "subselection"行/分组

javascript - Firestore : Multiple conditional where clauses

javascript - css代码如何将导航放在中间

node.js - 用于开发的 React-router Web 服务器

javascript - ngBootBox 回调函数不起作用(AngularJS)

html - 如何在其默认程序而非浏览器中打开指向本地文件的 html 链接?

html - Bootstrap 3 字形图标不能在按钮内工作

c# - 将 CSS 类添加到代码隐藏的客户端超链接

javascript - 发帖请求问题

javascript - 如何在jsx中模仿css多个类名