flutter - “Timestamp”类型不是“DateTime”类型的子类型
问题描述
当我从 Firestore 文档获取时间戳数据元素然后尝试将其转换为 DateTime 类型并将其放入 TextEditingController 时,我遇到了类型不匹配。我正在尝试使用 firestore 文档中的数据填充应用程序表单。
这是屏幕截图:
这是我用来转换和分配数据的代码:
var dtDate = DateTime.fromMicrosecondsSinceEpoch(currentEvent.get('eventDate'));
eventDateController.text = DateFormat.yMMMd().format(dtDate).toString();
在同一页面上,我使用以下代码(有效)从日期选择器插件中获取日期和时间:
if (_date != null && _date != _datePicked) {
setState(() {
eventDateController.text =
DateFormat("MM/dd/yyyy").format(_datePicked!);
eventProvider.changeeventdate(_datePicked);
_selectedDate = _datePicked;
//DateFormat("MM/dd/yyyy").format(_date));
});
}
This is the code for getting the time:
TimeOfDay _timePicked = await (showTimePicker(
context: context,
initialTime: new TimeOfDay.now()) as FutureOr<TimeOfDay>);
_dt = DateTime(_selectedDate!.year, _selectedDate!.month, _selectedDate!.day, _timePicked.hour, _timePicked.minute);
//if (_timePicked != null) {
setState(() {
eventStartTimeController.text = dateFormat.format(_dt); //_timePicked.format(context);
eventProvider.changeeventstarttime(_dt);
});
//}
},
这是我得到的错误:
“Timestamp”类型不是“DateTime”类型的子类型
我该如何解决?
解决方案
在其他几篇文章的帮助下,我终于弄清楚了。这是答案:
eventDateController.text = DateFormat('EE MMddyyyy').format(currentEvent['eventDate'].toDate());
推荐阅读
- highcharts - Highcharts 9.0.1 抛出错误'highstock.js:178 错误:
属性 y:预期长度,“NaNNaNNaN”。 - c# - Singleton WebJob 静态方法需要访问 DI 对象
- c# - 如何获取索引页上可枚举的显示名称属性
- css - 为什么它没有相对于其容器定位?
- vba - VBA UserForm 的问题 - 控件重叠或变灰
- java - 从每个连接模型都有线程的服务器提供图像是个好主意吗?
- personalization - 业务中心用户个性化导出
- python - EmptyPage at / 该页面不包含任何结果
- django - 使用 django 和 AWS SES 签名 V4 发送电子邮件
- javascript - Javascript将匿名函数转换为传递点击对象的命名函数