本质上,我在反应功能组件中有以下内容:
<div className="content">
<div className="filters">
<MyFilter1 data={data}>
{(filter1Data) => {
return <MyFilter2 data={filter1Data}>
{(finalData) => {
return <div className="final-data">{finalData}</div>
}}
</MyFilter2>
}}
</MyFilter1>
</div>
<div className="filtered" />
我正在使用带有渲染子范式的多个过滤器来获取最终数据。但是出于(诚然令人沮丧的)样式原因,我想在过滤器位置之外的 div 中呈现最终数据(在这种情况下,在“过滤”div 内)。我怎样才能做到这一点?我的方法错了吗?'带有渲染孩子的过滤器'是错误的方法吗?
我努力了:
使用 createRef() 反应门户,本质上问题最终是当调用“finalData”函数时 ref 还不可用。
编辑:
过滤器组件本身非常复杂,但我可以举几个例子。我过滤的数据是一个具有 12 个属性的简单对象。其中一个过滤器被实现为一系列复选框,确定我想要显示的数据的哪些属性(由于字段的数量,必须作为单独的组件)。数据的一个属性是价格,另一个过滤器是价格范围“拨号器”,它指定要显示的价格范围(也就是排除范围外的数据点)。