Флаттер заморожен Расчетное значение по умолчанию
Мне нужно иметь вычисленное значение в
freezed
класс
factory MyState({
///....
@Default(UniqueKey()) UniqueKey key,
}) = _MyState;
Это не разрешено. Как я могу это обойти. Об установке его в inital() не может быть и речи.
Спасибо
1 ответ
Решение
Хотя я не знаю, является ли это идиоматикой, следующий фрагмент должен предоставить вам решение:
factory MyState._internal({
UniqueKey key,
}) = _MyState;
factory MyState({
UniqueKey? key,
}) {
return MyState._internal(key: key ?? UniqueKey());
}