Как показать другой виджет, когда пользователь находится в автономном режиме при использовании StreamBuilder?

Клавиши со стрелками обычно не перемещают выделение, поэтому вы должны были выполнить какой-то код для ответа на клавиши со стрелками для перемещения выбранных частей.

Если это так, то почему вы не можете то делаете все, что хотите сделать в обработчике событий клавиатуры?

Другими словами, если вы пишете какой-то код, который изменяет Node.location некоторых узлов, то не должно быть никаких «SelectionMoved» DiagramEvent. Поэтому, если вы хотите что-то сделать, когда переместите узел, просто сделайте это после того, как вы переместили узел.

2
задан Nudge 19 January 2019 в 15:19
поделиться

1 ответ

Вы можете добавить ошибку к Stream и перехватить ее в StreamBuilder следующим образом:

_someStreamCtrl.addError(error);  // Client is offline

И в StreamBuilder:

StreamBuilder<String>(
      stream: someStream,
      initialData: [],
      builder: (BuildContext context,
          AsyncSnapshot<String> snap) {
        if (snap.hasError)
            return ErrorWidget(); //Error
        if (snap.hasData)
          return // Desired widget

        //if waiting
          return CircularProgressIndicator();
        );
      },
    );
0
ответ дан Tornike Qurdadze 19 January 2019 в 15:19
поделиться