Flutter 用@freezed修饰的类不能具有可变属性
在以下代码上运行build runner会输出一个错误Flutter 用@freezed修饰的类不能具有可变属性,flutter,dart,Flutter,Dart,在以下代码上运行build runner会输出一个错误 @freezed abstract class Person implements _$Person { const Person._(); // Added constructor int _readCount = 0; factory Person({ String name, int age }) = _Person; getPrivatVar(){ return _readCount++ } } 用@freezed
@freezed
abstract class Person implements _$Person {
const Person._(); // Added constructor
int _readCount = 0;
factory Person({ String name, int age }) = _Person;
getPrivatVar(){ return _readCount++ }
}
用@freezed修饰的类不能具有可变属性
但是(u readCount)是一个私人的专有。为什么它还要检查私人财产。如何解决这个问题?谈到了它本身:
为不可变的类生成代码,该类具有简单的语法/API,且不影响功能
重点是我的。不可变类。你的类不是不变的,它有状态。不管你的州是公共的还是私人的,它仍然是可变的
您可以通过从类中删除私有状态来修复它