繁体   English   中英

反应嵌套 2 级 object 的参考

React refs of nested 2nd level object

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

假设这个结构

const Foo = () => {
    const bazRefs = React.useRef<Array<HTMLDivElement | null>>([]); // List of Baz wanted

    return <div>{[0, 1, 2, 3].map((i) => <Bar ref={(el) => (bazRefs.current[i] = el)} />)}</div>
}

const Bar = React.forwardRef<HTMLDivElement>(({ }, ref) => {
    return <div>{[0, 1, 2].map(() => <Baz />)}</div>
})

const Baz = () => {
    return <div ref={ref}>Test</div>
}

我知道通过回调我可以获得Bar的列表,但是Baz的聚合列表怎么样?

1 个回复

您可以在Foo组件中定义一个 Refs 数组并使用 for 循环来分配初始值:

  for (...){
    myRef = useRef()
  }

然后您可以将其传递给子组件。

1 嵌套 object 反应原生和 Realme

大家好,请问我如何用 Realm 和 react-native 从 api 表示以下数据我的 Json 应该是这样的 这是我尝试做的但不起作用 有人可以告诉我缺少什么吗? ...

2 循环嵌套 object 反应原生

我是本机反应的新手,想通过嵌套的 object 循环。 我创建了一个名为“spots.js”的文件,如下所示: 现在我正在尝试显示来自 imagesReviews 的“点”的图像。 我知道我如何通过 object 循环,但我被这个嵌套的 object 卡住了。 目前我有这个: 结构截图:在此处输入图 ...

3 反应 setstate 嵌套 object 问题

我无法解决这个 setState 第二天晚上,我已经绝望了。 我有大量嵌套的 object 我正在尝试更新。 如果我在 todaysMenu 中有多个元素,并且我正在尝试更新 state 以使第二个元素整个数组“存储”在 todaysMenu 的第一个元素中。 如果我删除方括号,它只是存储为对象。 ...

6 如何通过参考异步操作深度嵌套的 object

我正在做一个网格项目,我正在操作一个模式并基于它呈现页面。 因此,我将架构的引用传递给 function,其中 function 将操纵深度嵌套的 object,例如, 至 这种操作将基于 URL 和参数发生,所以我需要使用 forEach 循环,但不幸的是,forEach 循环不是异步的。 在这 ...

7 如何获取Object.keys(myEl)参考的子级

在下面的代码中,我可以获得对text000对象的引用,但是我需要捕获其子数组作为目标有效负载。 引用密钥后,如何捕获其子代? 完整对象如下: 要获取对我正在使用的“ text000”键的引用: 我需要拉出密钥的内容/子代&gt; {“ title”:“ Text(000) ...

8 反应数组中嵌套 object 的更新属性

假设我有以下数据: 我进行了 API 调用以将此数据导入我的 React 应用程序: 现在我的问题是我必须将所有这些 NUMERIC 属性值(stockData.priceChanges.daily、stockData.financialData.roa 等)转换为百分比,这意味着我必须将它们乘以 ...

10 如何以 Angular 反应形式更新嵌套的 object

我正在使用 Angular 14 框架并寻找一种非常简单的方法。 假设我想添加一个带有其他联系方式的客户。 我的 Angular 反应形式是, 现在我的 API 也发出 JSON 之类的, 现在使用响应式表单创建一个新的客户端条目很简单。 但是更新数据是相当痛苦的。 有没有更新的最佳解决方案? ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM