Blazor 参数是否会带来额外的开销?

Do Blazor Parameters carry additional overhead?

我有一个需要一些外部数据的 blazor 组件,所以我通过参数传递它。我的问题是,我应该重塑数据,创建一个额外的数据结构,并将其传递给组件,还是应该只发送整个原始对象。

如果传递的参数是对原始对象的引用,那么它可能会带来非常小的额外开销。另一方面,如果原始对象是一个副本,那么只需要将所需的数据重塑为一个新对象就值得了。

谢谢。

Blazor 不会进行深度对象树比较以查看在将参数传递给子项时值是否已更改。规则是,如果父级将参数传递给子级,则每当父级渲染子级时,也将重新渲染,以防传递的值发生更改。

如果生成的 HTML 没有任何不同,则不会进行 DOM 更改。

如果传递 1 个或 10 个参数,性能方面的差异很小(可能几毫秒)。