在我的Flutter应用中,我将构建环境dev和prod分开。为此,我创建了一个AppConfig类来扩展继承的窗口小部件。
class AppConfig extends InheritedWidget {
AppConfig({
@required this.title,
@required this.clientId,
@required this.redirectUrl,
@required this.discoveryUrl,
@required this.scopes,
@required this.apiBaseUrl,
@required Widget child,
}) : super(child: child);
final String title;
final String clientId;
final String redirectUrl;
final String discoveryUrl;
final String apiBaseUrl;
final List<String> scopes;
static AppConfig of(BuildContext context) {
return context.dependOnInheritedWidgetOfExactType<AppConfig>();
}
@override
bool updateShouldNotify(InheritedWidget oldWidget) => false;
}
在视图中,它工作正常,我可以像这样访问配置文件: _config = AppConfig.of(context);
我在我的应用程序中遵循BLoC架构模式。是否可以在集团或网络层上访问配置文件?例如在我的API提供程序中。问题是,这些类中没有上下文。目标将是这样的。
Future<dynamic> get(String url) async {
_config = AppConfig.of(context);
}
我该如何实现?
我正在寻找相同的解决方案。如果找到一个,请提供。
更新:检查此链接,它是单例的解决方案:
https://medium.com/flutter-community/flutter-ready-to-go-e59873f9d7de
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句