嗨,我在运行应用程序时收到以下错误,可能是该问题的原因?
W小工具图书馆的例外情况╞═════════════════════════════════════════ ══════════════════在构建Home(dirty,state:_HomeState#f7a67)时引发了以下断言:'package:flutter / src / widgets / framework.dart':断言失败:1639行:'!children.any((Widgetchild)=> child == null)':不正确。
几天前遇到了同样的问题。
这种情况发生在您忘记或错过return小部件时。
没有看到您的代码,很难知道确切的故障点。
就我而言,我之前的代码如下:
@override
Widget build(BuildContext context) {
//....
new Column(
//.....
);
}
修复后::
@override
Widget build(BuildContext context) {
//....
return new Column(
//.....
);
}
希望这会有所帮助!
如果小部件列表中没有null,也可能会出现此问题:
Widget build() {
return new Column(
children: [
new Title(),
new Body(),
shouldShowFooter ? null : new Container()
]
);
}
解决此问题:
bool notNull(Object o) => o != null;
Widget build() {
return new Column(
children: <Widget>[
new Title(),
new Body(),
shouldShowFooter ? new Footer() : new Container()
].where(notNull).toList(),
);
}
就我而言,buildChildrenren的结果为null,或者返回列表中的一个元素为null。
Column column = new Column(
// center the children
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.stretch,
children: buildChildren(context),
);