Исправлена ​​ошибка: как решить Возвращаемый тип StreamController <ConnectivityStatus>не является потоком, как определено анонимной ошибкой закрытия - PullRequest
0 голосов
/ 19 сентября 2019

Я следовал приведенному ниже руководству по состоянию подключения на основе подключения к Интернету.

ссылка: https://www.filledstacks.com/post/make-your-flutter-app-network-aware-using-provider-and-connectivity-status/

Теперь проблема заключается в том, что я пытаюсь реализовать код.в конце процесса, где я использую StreamProvider, в компоновщике я получаю эту ошибку:

ошибка: возвращаемый тип 'StreamController' не является 'Stream', как определено анонимным закрытием.

КОД СЛЕДУЕТ СЛЕДУЮЩЕМУ: main.dart

@override
  Widget build(BuildContext context) {
      return StreamProvider(
        builder:  (context) => ConnectivityService().connectionStatusController, // ERROR LINE
        child: ChangeNotifierProvider<ThemeChanger>(
          builder: (_) => ThemeChanger((x) ? ThemeChanger.customDarkTheme : ThemeChanger.customLightTheme),
          child: new MaterialAppWithTheme(),
        ),
      );
  }
}

полностью заменил мой код типа на код git авторов, ссылка ниже: https://github.com/FilledStacks/flutter-tutorials/tree/master/011-network-sensitive-ui/

я пробовал поиск в Google, нобесполезно для моего случая.что не так в моем коде?это потому, что я использую другого провайдера?


ОБНОВЛЕНО ОТВЕТА В РЕШЕНИИ, НАЙДЕННОГО САМО ОТКРЫТИЕМ


@override
  Widget build(BuildContext context) {
      return StreamProvider(
        builder:  (context) => ConnectivityService().connectionStatusController.stream, // add .stream at end
        child: ChangeNotifierProvider<ThemeChanger>(
          builder: (_) => ThemeChanger((x) ? ThemeChanger.customDarkTheme : ThemeChanger.customLightTheme),
          child: new MaterialAppWithTheme(),
        ),
      );
  }
}

Я думаю, что их обновлениек пакету с момента публикации Учебного пособия, и так как я просматривал много статей, я взял Контроллер потока ключевых слов, сделал с ним RND, а затем перешел к Stream Provider и сделал еще несколько RND по этому вопросу, и при этом увиделприемник и поток в одном из других учебников, но, поскольку я был намного впереди в коде и эффективен благодаря этому учебнику.я только добавил поток в конце с периодом и вуаля!проблема решена.

Я надеюсь, что люди смогут найти это решение, готовое для их приложения :)

1 Ответ

0 голосов
/ 20 сентября 2019

Исправлено / ответ на проблему обновлен в первом посте (сам вопрос).Спасибо.

...