Эти два строго эквивалентны, но оба варианта плохие.
Вы должны , а не создавать измененные данные внутри Inheritedwidget . Вы можете легко потерять свое состояние иэто считается плохой практикой.
Вместо этого рассмотрите возможность упаковки Inheritedwidge в StatefulWidget или используйте пакет, такой как provider
.
Используя provider
, вы не сможетебольше не нужно делать такой класс.Вместо этого вы можете напрямую сделать:
Provider(
builder: (_) => CommentsBloc(),
dispose: (_, bloc) => bloc.dispose(),
child: Whatever(),
)