我只是想知道当 Parent 小部件的属性发生变化时 Flutter Widget 是如何工作的。
假设我们有一个父 Widget,它基于一些可变值或一些可侦听值(如 Bloc 模式)呈现 Widget。
return Scaffold(
body: BlocBuilder<LocationBloc, LocationState>(builder: (context, state) {
if (state is NewLocationState) {
return Map(
location: LatLng(state.latitude, state.longitude),
);
}
return Container();
}),
);
所以在上面的代码中,NewLocationState
每 15 秒出现一次新值。
我的问题是:这个Map
小部件发生了什么?
Map
Flutter 是否每 15 秒用新的或类似的 React渲染一个全新的Widget NewLocationState
,Flutter 可以比较某种虚拟树中的更改,并且只更改现有的属性,Map
这是有效的,应该会减少内存消耗。
Bloc 示例仅供参考/我的问题的上下文。但我想了解 Flutter Widget 在属性更改时的整体表现。
干杯