您可以使用
extends(继承)或
with(作为混合)。两种方式都可以使您访问中的
notifyListeners()方法
ChangeNotifier。遗产
扩展
ChangeNotifier意味着这
ChangeNotifier是超类。
class MyModel extends ChangeNotifier { String somevalue = 'Hello'; void doSomething(String value) { somevalue = value; notifyListeners(); }}
如果您的模型类已经在扩展另一个类,则无法扩展,
ChangeNotifier因为Dart不允许多重继承。在这种情况下,您必须使用mixin。混合蛋白
mixin允许您使用mixin类的具体方法(即
notifyListeners())。
class MyModel with ChangeNotifier { String somevalue = 'Hello'; void doSomething(String value) { somevalue = value; notifyListeners(); }}
因此,即使您的模型已经从另一个类扩展了,您仍然可以“混入”
ChangeNotifier。
class MyModel extends SomeOtherClass with ChangeNotifier { String somevalue = 'Hello'; void doSomething(String value) { somevalue = value; notifyListeners(); }}
这是一些关于mixin的好读物:
- Dart:什么是mixin?
- Dart for Flutter:Dart中的Mixins
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)