gpt4 book ai didi

dart - 未处理的异常 - Flutter

转载 作者:IT王子 更新时间:2023-10-29 06:45:34 26 4
gpt4 key购买 nike

我是 Flutter 的新手,正在通过 youtube 上关于 notodo_app 的教程学习。所以我遵循相同的代码并且已经尝试重写几乎所有内容,但是当我开始使用 initstate 和 setstate 时。

setstate相关代码

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}");
});
}

我收到此错误并且没有提交任何内容,如果我使用的是模拟器,它会自动关闭。

E/flutter (23633): [ERROR:flutter/shell/common/shell.cc(184)] Dart Error: Unhandled exception:
E/flutter (23633): Stack Overflow
E/flutter (23633): #0 _Completer.completeError (dart:async/future_impl.dart:19:3)
E/flutter (23633): #1 _RootZone.runBinary (dart:async/zone.dart:1384:54)
E/flutter (23633): #2 _FutureListener.handleError (dart:async/future_impl.dart:143:20)
E/flutter (23633): #3 Future._propagateToListeners.handleError (dart:async/future_impl.dart:654:47)
E/flutter (23633): #4 Future._propagateToListeners (dart:async/future_impl.dart:675:24)
E/flutter (23633): #5 Future._completeError (dart:async/future_impl.dart:494:5)
E/flutter (23633): #6 _SyncCompleter._completeError (dart:async/future_impl.dart:55:12)
E/flutter (23633): #7 _Completer.completeError (dart:async/future_impl.dart:27:5)
E/flutter (23633): #8 _RootZone.runBinary (dart:async/zone.dart:1384:54)
E/flutter (23633): #9 _FutureListener.handleError (dart:async/future_impl.dart:143:2

最佳答案

您所关注的示例在其 database_client.dart 文件中存在错误,特别是导致递归/堆栈溢出异常。请将第 22 行 上的代码从 return db; 更新为 return _db; 现在它应该可以工作了

Future<Database> get db async {
if (_db != null) {
return _db; // return db; throws a Stack Overflow Exception / recursion
}
_db = await initDb();
return _db;
}

关于dart - 未处理的异常 - Flutter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54585312/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com