【发布时间】:2021-12-13 11:26:49
【问题描述】:
我有一个方法需要在构造ListView.builder之前先执行获取项目,如何保持这个方法总是在ListView之前执行?
class TestModel extends GetxController {
final items = <Item>[].obs;
void init() async {
items.value = getRemoteItems();
}
}
class TestScreen extends StatelessWidget {
final TestModel testModel = Get.put(TestModel());
@override
Widget build(BuildContext context) {
if (testModel.items.isEmpty) {
testModel.init(); // It seems the ListView can not get the testModel's items.
}
return Obx(
() => ListView.builder(
itemCount: testModel.items.length, // But the items length is always 0.
itemBuilder: (context, index) {
final item = testModel.items[index];
...
}
}
【问题讨论】:
标签: flutter flutter-getx