Как использовать, если еще условие в кнопке - флаттер - PullRequest
0 голосов
/ 20 марта 2019

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

RaisedButton(
                onPressed: priceController.text == ""
                    ? () => showDialog(
                        context: context,
                        builder: (BuildContext context) {
                          return AlertDialog(
                            title: Text("Enter a price"),
                          );
                        })
                    : () => apiRequest(url, {
                          'price': priceController.text,
                          'user_id': "user2"
                        }),
                child: Text("Set Level"),
              );

1 Ответ

2 голосов
/ 20 марта 2019

Вместо двух функций просто используйте одну и напишите свою логику внутри.как это:

RaisedButton(
  onPressed: () {
    if (priceController.text == "") {
      showDialog(
          context: context,
          builder: (BuildContext context) {
            return AlertDialog(
              title: Text("Enter a price"),
            );
          });
    } else {
      apiRequest(url, {'price': priceController.text, 'user_id': "user2"});
    }
  },
  child: Text("Set Level"),
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...