network_provider.dart 603 B

123456789101112131415161718
  1. import 'package:flutter_riverpod/flutter_riverpod.dart';
  2. import 'package:flutter_riverpod/legacy.dart';
  3. import '../constants/app_enum.dart';
  4. import 'network_service.dart';
  5. /// Service Provider
  6. final networkServiceProvider = Provider<NetworkService>((ref) {
  7. return NetworkService();
  8. });
  9. /// 网络状态 StreamProvider
  10. final networkStatusProvider = StreamProvider<NetworkStatus>((ref) {
  11. final service = ref.read(networkServiceProvider);
  12. return service.watchNetwork().distinct();
  13. });
  14. /// 保存网络断开前的页面路径
  15. final previousPagePathProvider = StateProvider<String?>((ref) => null);