'Future<bool> 的实例,但期望 bool

Instance of 'Future<bool>, but expect bool

我是 flutter.And 的新手,我有一个 question.I 方法 checkIsExistByString 来检查我在 sqflite.I 中插入日期之前是否有数据,期望是真还是假。

class DbManager {

    Future<bool> checkIsExistByString(String title) async {

            await openDb();
            var result = await _database
                .rawQuery('SELECT $Title FROM $tableName WHERE $Title = ?', [title]);

            return Future<bool>.value(result.isEmpty ? true : false);
          }
}

当我尝试使用 checkIsExistByString 时,我希望得到布尔值,但我有“未来”实例

void _submit() async {

    print(dbmanager.checkIsExistByString('Title'));//print -- Instance of 'Future<bool>',but i expect true

   ...
  }

你需要等待。

print(await dbmanager.checkIsExistByString('Title'));

也不需要将bool转换成Future<bool>

 return result.isEmpty ? true : false;

使用 await 关键字如下:

print(await dbmanager.checkIsExistByString('Title'));