Flutter Deep Dive第1部分:“ RenderFlex子项的非零flex …

本文是由四个部分组成的系列文章的一部分。 您可以在这里找到其他人:

  • 第1部分:“ RenderFlex孩子……”,走进婴儿游泳池
  • 第2部分:突降
  • 第3部分:Flex不是Flex
  • 第4部分:Flex布局算法

除了谈论Flutter并让自己在两大洲的观众面前尴尬之外,我最近还决定深入研究。 我所有的朋友都深入研究了动画,状态管理,手势或测试等有趣的内容。

我? 我决定深入研究错误消息。

但这不是普通的错误消息。 如果InheritedWidget是Flutter的Monad,那么我们的Boogeyman(Uomo Nero,Бугимен,Hombre Boogeyman,بعبع,Mumus,Croque-mitaine,Baba Yaga,约翰·威克(John Wick)。

还应该指出,我们的Boogeyman有一些兄弟姐妹,您可能会不时看到:

  • “ RenderConstrainedBox对象在布局期间被赋予了无限大小。”
  • “ BoxConstraints强制无限宽度。”
  • 阅读完此深入探究后,您还可以识别更多内容。

放轻松,所有这些错误仅是单个主题的小变化。 错误消息是不同的,因为在每种情况下,错误都是由不同的原因引起的,但是最终,所有错误归结为相同的问题:

某种东西试图变得无限大,没有什么可以阻止它,而您需要修复它。

一旦了解了引擎盖下的工作方式,当Boogeyman从床底下爬出来时,确切地知道要怎么做就变得越来越容易。

您当然会派John Wick。