ListView.builder 以前的 Flutter DateTime 格式
Flutter DateTime formate in Time ago in ListView.builder
我有 PageView.builder 小部件,它正在从我的服务器获取数据。
PageView.builder(
itemCount: _newsList.length,
itemBuilder: (context, index){
if(_newsList.isNotEmpty){
return Text(_newsList[index].posted!);
} else Container("Empty");
}
)
我导入了https://pub.dev/packages/timeago
但不能在 PageView.builder()
.
中使用
请帮我整理一下。
String timeAgo(DateTime fatchedDate) {
DateTime currentDate = DateTime.now();
var different = currentDate.difference(fatchedDate);
if (different.inDays > 365)
return "${(different.inDays / 365).floor()} ${(different.inDays / 365).floor() == 1 ? "year" : "years"} ago";
if (different.inDays > 30)
return "${(different.inDays / 30).floor()} ${(different.inDays / 30).floor() == 1 ? "month" : "months"} ago";
if (different.inDays > 7)
return "${(different.inDays / 7).floor()} ${(different.inDays / 7).floor() == 1 ? "week" : "weeks"} ago";
if (different.inDays > 0)
return "${different.inDays} ${different.inDays == 1 ? "day" : "days"} ago";
if (different.inHours > 0)
return "${different.inHours} ${different.inHours == 1 ? "hour" : "hours"} ago";
if (different.inMinutes > 0)
return "${different.inMinutes} ${different.inMinutes == 1 ? "minute" : "minutes"} ago";
if (different.inMinutes == 0) return 'Just Now';
return fatchedDate.toString();
}
要使用,将 timeago 导入为:
import 'package:timeago/timeago.dart' as timeago;
要在小部件中使用 timeago:
Text(timeago.format(DateTime.fromMillisecondsSinceEpoch(dateTimeMillis))); //or other DateTime object
我有 PageView.builder 小部件,它正在从我的服务器获取数据。
PageView.builder(
itemCount: _newsList.length,
itemBuilder: (context, index){
if(_newsList.isNotEmpty){
return Text(_newsList[index].posted!);
} else Container("Empty");
}
)
我导入了https://pub.dev/packages/timeago
但不能在 PageView.builder()
.
请帮我整理一下。
String timeAgo(DateTime fatchedDate) {
DateTime currentDate = DateTime.now();
var different = currentDate.difference(fatchedDate);
if (different.inDays > 365)
return "${(different.inDays / 365).floor()} ${(different.inDays / 365).floor() == 1 ? "year" : "years"} ago";
if (different.inDays > 30)
return "${(different.inDays / 30).floor()} ${(different.inDays / 30).floor() == 1 ? "month" : "months"} ago";
if (different.inDays > 7)
return "${(different.inDays / 7).floor()} ${(different.inDays / 7).floor() == 1 ? "week" : "weeks"} ago";
if (different.inDays > 0)
return "${different.inDays} ${different.inDays == 1 ? "day" : "days"} ago";
if (different.inHours > 0)
return "${different.inHours} ${different.inHours == 1 ? "hour" : "hours"} ago";
if (different.inMinutes > 0)
return "${different.inMinutes} ${different.inMinutes == 1 ? "minute" : "minutes"} ago";
if (different.inMinutes == 0) return 'Just Now';
return fatchedDate.toString();
}
要使用,将 timeago 导入为:
import 'package:timeago/timeago.dart' as timeago;
要在小部件中使用 timeago:
Text(timeago.format(DateTime.fromMillisecondsSinceEpoch(dateTimeMillis))); //or other DateTime object