为什么要将函数传递给react组件来获取数据,而不是数据本身?

vsaztqbk  于 2023-06-24  发布在  React
关注(0)|答案(1)|浏览(93)

我有一个问题,这可能是微妙的(或不是)。
为什么要将函数传递给react组件来获取数据,而不是数据本身?举个简短的例子

<CompTest data={data} ...>

vs

const getData() => data;
<CompTest data={()=> getData()} ...>

我想知道是否有一个技巧与react数据拉它与懒惰...不确定..

s4n0splo

s4n0splo1#

通常,您只需将数据作为props发送下来,就像在<CompTest data={data} />中一样,或者更好地使props显式化,这样您就可以知道组件使用数据中的哪些字段。但只要数据是不可变的,这就是编程偏好。
在极少数情况下,您会希望使用函数来检索数据。
通常,您将使用函数将数据从子组件更新到父组件n:<CompTest data={data} onDataChanged={setData} />,其中setDatasetData(data:DataType)=>void类型的函数(TypeScript表示DataType类型的参数并不返回任何内容)

相关问题