Flutter:调试小部件重建的正确方法

Mr *_*Jax 5 flutter

我如何才能看到是什么导致我的小部件不断传播小部件树?我正在使用 Provider 包并遇到小部件不断堆积的问题 - 例如,如果我向主页添加打印语句:

@override
  Widget build(BuildContext context) {
    print("Home");
Run Code Online (Sandbox Code Playgroud)

然后在应用程序中导航一段时间后,如果我清除调试控制台并加载主页或其下方的任何屏幕,我将获得多个“主页”打印输出,即:

flutter: Home
flutter: Home
flutter: Home
flutter: Home
flutter: Home
flutter: Home
Run Code Online (Sandbox Code Playgroud)

我在应用程序中导航的次数越多,它们堆积的就越多。调试这个的正确方法是什么?

Rém*_*let 5

你可以使用 Flutter 的 devtools https://flutter.dev/docs/development/tools/devtools/overview

它拥有一些有用的屏幕,例如: 在此处输入图片说明

此屏幕包含在给定时间范围内重建的小部件的详细树。