在创建Bloc时,使用EquatableMixin并覆盖“==”和“hashCode”函数,以检查前后状态是否相等,以确保Bloc库在前后状态不相等时正确更新状态。
代码示例:
class MyBloc extends Bloc
@override
Stream
@override List
@override bool get stringify => true;
@override bool operator ==(Object o) { if (identical(this, o)) return true;
return o is MyStateUpdated && o.data == data;
}
@override int get hashCode => data.hashCode; }
在Bloc中使用EquatableMixin并覆盖“==”和“hashCode”函数可以检测前后状态是否相等,从而确保Bloc库在前后状态不相等时正确更新状态。