假设我有 3 个 ChangeNotifierProviders “Auth1”、“Auth2”、“Auth3”。我希望它们都实现 login()、signup()、isAuthenticated()。
这样我就可以随时用另一个提供者替换一个提供者。
//Interface
class IAuth {
Future<void> signUp(String email, String password)=>throw UnimplementedError();
Future<void> login(String email, String password) => throw UnimplementedError();
Future<bool> isAuthenticted() => throw UnimplementedError();
void logout() => throw UnimplementedError();
}
我可以定义
类 Auth1 扩展 ChangeNotifier 实现 IAuth { ... }
类 Auth2 扩展 ChangeNotifier 实现 IAuth { ... }
类 Auth3 扩展 ChangeNotifier 实现 IAuth { ... }
但是我怎样才能提供这些提供者,以便将来可以毫无问题地替换它们呢?
ChangeNotifierProvider.value(值:Auth1())
一段时间后,我可能想用 Auth2 替换 Auth1 并且我想知道这是否是一个微不足道的问题