Задать вопрос
@uyshaaaaaa

Что не так с кодом в dart?

Future<bool> isEmEx(String email) async{
    final query = await db.select(db.users)
    ..where((row) => row.email.equals(email))
    ..getSingleOrNull();
    return query != null;
  }


The operand can't be 'null', so the condition is always 'true'.\nRemove the condition
  • Вопрос задан
  • 20 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Stepik
    Flutter Разработка (2025). От 🐣 базы до 😎 вайб кодинга
    1 месяц
    Далее
  • Merion Academy
    Разработка приложений на Flutter и Dart
    2 месяца
    Далее
  • МИПО
    Бакалавриат Интернет технологии и мобильные приложения
    54 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 1
opium
@opium
Просто люблю качественно работать
тут `..getSingleOrNull()` — каскадный оператор, он возвращает исходный SimpleSelectStatement, а не Future. Поэтому query не nullable и != null всегда true.

Нужны скобки:
final query = await (db.select(db.users)
    ..where((row) => row.email.equals(email)))
    .getSingleOrNull();
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы