flutter - 使用 Cubit 状态管理 Flutter sqflite red 查询报错
问题描述
我想使用 sqlite 和 Flutter Cubit 构建一个 crud 应用程序,问题是当我想从我的数据库中删除数据时,它会返回一个错误。我在控制台中测试我的查询它工作完美但是当我使用 Listview 它不工作。我虽然可能问题与我的 Cubit 实现有关,但事实并非如此,这是我的代码:
database red query:
Future<List<Account>> redAllAccounts() async {
final result = await db.query('account');
return result.map((e) => Account.fromjsonAccount(e)).toList();
}
my Cubit file:
import 'package:bloc/bloc.dart';
import 'package:project/Model/account.dart';
import 'package:project/control/database.dart';
class AccountCubit extends Cubit<List<Account>> {
AccountCubit(intistate) : super(intistate);
Future getAccount() async {
DatabaseHelper database = DatabaseHelper();
List<Account> account;
account = await database.redAllAccounts();
emit(account);
}
}
my list account file:
class AccountList extends StatelessWidget {
@override
Widget build(BuildContext context) {
BlocProvider.of<AccountCubit>(context).getAccount();
// var account = BlocProvider.of<AccountCubit>(context).account;
return Container(
padding: EdgeInsets.all(20),
child: BlocBuilder<AccountCubit, List<Account>>(
builder: (context, state) {
return ListView.builder(
padding: EdgeInsets.all(20),
itemCount: state.length,
itemBuilder: (context, index) {
var acc = state[index];
return Column(
children: [
Text(acc.name),
// Text(acc.adress),
TextButton(
onPressed: () {
// BlocProvider.of<AccountBlock>(context)
// .add(AccountEvent.delete(acc.accountNumber));
},
child: Text('delete'))
],
);
});
***error:
NoSuchMethodError (NoSuchMethodError: The method 'query' was called on null.
Receiver: null
Tried calling: query("account"))***
解决方案
推荐阅读
- flutter - 如何在 Flutter 中制作 Font Family Fallback?
- python - 如何在函数循环之外定义参数?
- node.js - 如何通过单击外部菜单和菜单项来关闭“react-burger-menu”
- android - 如何在 Android Studio 4.1 中默认启用 Kotlin Android 扩展
- appium - appium ios测试在部分电脑上运行缓慢的可能原因
- javascript - 如何在 HTML 中查看我的 typeScript 的结果?
- c# - 以 .NET Standard 和 .NET Framework 为目标时,条件编译是不好的做法吗?
- r - 创建一列,根据另一行中的事件为数据框中的一行分配值
- javascript - 从选择中删除 Javascript 函数
- java - 如何在 Java 中更改 Clock 实例的内部状态?