如何使用GetX初始化自定义Question类的RxList列表
正确初始化GetX响应式Question列表的方式
你遇到的问题根源是类型不匹配:[]默认创建的是List<dynamic>类型,调用.obs后得到的是RxList<dynamic>,和你声明的RxList<Question>类型无法兼容,因此报错。以下是几种可行的正确初始化方式:
方式一:指定列表泛型后转响应式
先创建明确类型的空列表,再通过.obs转为GetX响应式列表:RxList<Question> questionsList = <Question>[].obs;方式二:直接使用RxList构造函数
调用RxList的泛型构造函数初始化空的响应式列表:RxList<Question> questionsList = RxList<Question>();方式三:使用ObsList构造(与方式二等价)
由于RxList是ObsList的别名,也可以直接用ObsList初始化:RxList<Question> questionsList = ObsList<Question>();
如果后续要从Firestore加载数据到该列表,可借助你的fromFirestore工厂方法添加元素,示例如下:
// 假设snapshot是从Firestore获取的DocumentSnapshot实例 Question newQuestion = Question.fromFirestore(snapshot); questionsList.add(newQuestion);
内容的提问来源于stack exchange,提问作者Mr. Tacio
相关产品推荐
相关产品推荐

