flutter_in_action_2nd icon indicating copy to clipboard operation
flutter_in_action_2nd copied to clipboard

14.2.1中表述的一个改进建议

Open tufeiping opened this issue 3 years ago • 0 comments

Element与RenderObject不是一一对应的!

原文:根据Widget生成Element,然后创建相应的RenderObject并关联到Element.renderObject属性上。

建议改成:

根据Widget生成Element,但并非每种Widget都有UI属性(如类似Provider/Consumer的Widget没有UI属性),所以对于具有UI属性的Widget,其对应的Element(如继承自RenderObjectElement)可以通过createRenderObject方法创建相应的RenderObject并关联到Element.renderObject属性上。一般Element的RenderObject属性是其自身或子组件(Element本身非UI属性,但子组件肯定存在)RenderObject的引用。

以上是否合适点,请斟酌~

tufeiping avatar May 04 '22 15:05 tufeiping