Dart 未处理的异常-颤振
我是一个新手,通过youtube上关于notodo_应用程序的教程学习。所以我遵循同样的代码,并且已经尝试重写了几乎所有的东西,但是当我开始使用initstate时,setstate 与设置状态相关的代码Dart 未处理的异常-颤振,dart,flutter,Dart,Flutter,我是一个新手,通过youtube上关于notodo_应用程序的教程学习。所以我遵循同样的代码,并且已经尝试重写了几乎所有的东西,但是当我开始使用initstate时,setstate 与设置状态相关的代码 final List<NoDoItem> _itemList = <NoDoItem>[]; @override void initState() { super.initState(); _readNoDoList(); } void _handleSubm
final List<NoDoItem> _itemList = <NoDoItem>[];
@override
void initState() {
super.initState();
_readNoDoList();
}
void _handleSubmitted(String text) async {
_textEditingController.clear();
NoDoItem noDoItem = NoDoItem(text, DateTime.now().toIso8601String());
int savedItemId = await db.saveItem(noDoItem);
NoDoItem addedItem = await db.getItem(savedItemId);
setState(() {
_itemList.insert(0, addedItem);
});
print("Item saved id: $savedItemId");
}
_readNoDoList() async {
List items = await db.getItems();
items.forEach((item) {
NoDoItem noDoItem = NoDoItem.map(item);
print("Db items: ${noDoItem.itemName}");
});
}
下面的示例在其数据库\u client.dart文件上有错误,具体导致递归/堆栈溢出异常。请从返回数据库更新第22行的代码到返回_db现在应该可以工作了
Future<Database> get db async {
if (_db != null) {
return _db; // return db; throws a Stack Overflow Exception / recursion
}
_db = await initDb();
return _db;
}
Future get db async{
如果(_db!=null){
return _db;//return db;引发堆栈溢出异常/递归
}
_db=等待initDb();
返回_db;
}
这就解决了问题!实际上,我没有附加数据库_client.dart,但这个问题可能与所有遵循本教程的人类似。谢谢你!
Future<Database> get db async {
if (_db != null) {
return _db; // return db; throws a Stack Overflow Exception / recursion
}
_db = await initDb();
return _db;
}