当子窗口小部件调用命名为“ Push”的推子时,窗口小部件正在重建

时间:2018-07-15 05:39:02

标签: dart flutter

这是我的主屏幕小部件版本

1

这是从我的“ Child2”小部件中调用的一段代码

@override
Widget build(BuildContext context) {
  print("Rebuilt root widget");
  switch (authStatus) {
    case AuthStatus.notSignedIn:
      return Child1(
        auth: widget.auth,
        onSignedIn: _signedIn,
      );
    case AuthStatus.signedIn:
      return Child2(
        auth: widget.auth,
        onSignedOut: _signedOut,
      );
    }
  }
  return null;
}

按下“ OtherScreen”窗口小部件时,将再次打印文本“ 重建的根窗口小部件”,这意味着正在重建我的根窗口小部件。为什么会这样?

1 个答案:

答案 0 :(得分:0)

当前是一个错误(或至少是一个疏忽)。 Flutter将在推送和弹出时不必要地重建父窗口小部件。已有github问题提交。