Ошибка установщика при использовании ChangeNotifierProxyProvider

Я пытаюсь передать строку из Model1 в Model2 использование ChangeNotifierProxyProvider, но это дает ошибку:

Нет сеттера с именем 'string' в классе 'Model2'

Модель1:

class Model1 extends ChangeNotifier {
...
final String string = 'hello';
}

ChangeNotifierProxyProvider:

ChangeNotifierProxyProvider<Model1, Model2>(
      builder: (_, model1, model2) => model2
        ..string = model1.string,
    ),

Модель2:

class Model2 extends ChangeNotifier {

String _string;
String get string => _string;

}

Спасибо за помощь!

1 ответ

Вы объявили свойство доступным только для чтения.

Это не может быть finalи вместо этого должен иметь и геттер и сеттер.

Либо измените его на:

String _string;
String get string => _string;
set string(String value) => _string = value;

или же:

String string;
Другие вопросы по тегам