Flutter 我想从Firebase Firestore获取自定义开关的值
我想要开关的当前状态。我尝试了这个,但是我遇到了一个错误,类型“Future”不是类型“bool”的子类型。提前谢谢Flutter 我想从Firebase Firestore获取自定义开关的值,flutter,dart,google-cloud-firestore,Flutter,Dart,Google Cloud Firestore,我想要开关的当前状态。我尝试了这个,但是我遇到了一个错误,类型“Future”不是类型“bool”的子类型。提前谢谢 statusonoff( Device device) async { DocumentSnapshot variable = await Firestore.instance .collection('device-configs') .document(device.id) .get(); return var
statusonoff( Device device) async {
DocumentSnapshot variable = await Firestore.instance
.collection('device-configs')
.document(device.id)
.get();
return variable.data['value']['on'];
CustomSwitch(
activeColor: Colors.green,
value: statusonoff(context, device),
onChanged: (value) async {
DocumentSnapshot variable = await Firestore.instance
.collection('device-configs')
.document(device.id)
.get();
print(variable.data['value']['on']);
setState(() {
if (variable.data['value']['on'] == false) {
value = true;
_configMode = "on";
_updateDeviceConfig(context, device);
} else if (variable.data['value']['on'] == true) {
value = false;
_configMode = "off";
_updateDeviceConfig( device);
}
status = value;
});
},
),
由于方法
statusonoff
返回一个future,标记为async
,因此它现在将返回一种future
类型,并且CustomSwitch
的value
属性需要一个布尔值。这就是为什么你会出现这个错误
要解决此问题,只需在statusonoff(上下文、设备)
前面加上wait
CustomSwitch(
activeColor:Colors.green,
值:等待状态断开(上下文、设备),
//.....
意外的文本“等待”。请尝试删除该文本。我收到此错误