【发布时间】:2020-02-13 21:36:42
【问题描述】:
在 sqflite 数据库中,我有一个名为 user 的表。用户由用户名 a、b、c 组成。
当用户输入 var a 时,系统会与表 user 中的用户名进行比较。如果用户输入等于用户表中的用户名,系统将打印错误消息,否则系统将打印成功。
我尝试使用未来的构建器,但它不起作用。如何在 Test.dart 中进行验证?
谢谢。
这是我的代码:
SqliteHelper.dart
Future getDat(UserAccount userAccount) async {
var dbClient = await db;
name = userAccount.username;
List<Map> result = await dbClient.query("UserAccount",
where: "username =?", whereArgs: [userAccount.username]);
if (result.length == 1) {
return name;
}
}
Test.dart
_saveData() async {
var db = UserAccountHelper();
var mynote = UserAccount(cTitle.text);
await db.getDat(mynote);
FutureBuilder(
future: db.getDat(mynote),
builder: (context, snapshot) {
if (snapshot.hasError) print(snapshot.error);
var data = snapshot.data;
if (snapshot.hasData) print("test 3");
if(snapshot.data.toString() == cTitle.text.toString())
{print("success")}
else{print("error")};
});
}
【问题讨论】: