Flutter:“String”类型不是“DateTime”类型的子类型
我想从 mysql 获取时间戳并将其更改为时间前我的时间戳如下所示:
2021-03-04 06:06:48
在颤振中:
[{id: 1, caption: first post, useruid: b0zbRHZEKMbGSdNoVSjI0gsxXTX2, time: 2021-03-04 06:06:48,}],
错误类型“字符串”不是“日期时间”类型的子类型
在这里,我在此插件的帮助下调用将我的日期和时间更改为 timeago ..
ListView(
children: snapshot.data.map<Widget>((document) {
Provider.of<PostFunctions>(context, listen: false)
.showTimeAgo(document['time']);
return My Other Code...
)
I show like this in My Text
' , ${Provider.of<PostFunctions>(context, listen: false).getImageTimePosted.toString()}'
我在这里更改我的日期和时间
showTimeAgo(dynamic timedata) {
print(timedata);
imageTimePosted = timeago.format(timedata);
print(' my time posted ***** $imageTimePosted');
notifyListeners();
}
回答
您可能需要使用DateTime.tryParse()
方法将 String 转换为 DateTime,因为包使用 DateTime 并且您通过执行以下操作提供 String:
showTimeAgo(document['time']);
进行此更改:
showTimeAgo(DateTime.tryParse(document['time']));