请我需要流构建器小部件返回这最后一条消息(红色矩形框)在我的消息集合。我在下面使用的返回空字符串的方法必须在Text小部件中提供。
class MessageScreen extends StatefulWidget {
final String uid;
MessageScreen(this.uid);
@override
_MessageScreenState createState() => _MessageScreenState();
}
class _MessageScreenState extends State<MessageScreen> {
String uid;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
elevation: 0.0,
title: Center(
widthFactor: 5,
child: Text(
'Message',
style: mystyle(
20.0,
Style.Colors.titleColor,
),
),
),
),
body: LastMessageContainer(
stream:
messageCollection.orderBy('lastMessage.timestam', descending: true).where('users', arrayContains: uid).snapshots()),
);
}
}
class LastMessageContainer extends StatelessWidget {
final stream;
LastMessageContainer({
@required this.stream,
});
@override
Widget build(BuildContext context) {
return StreamBuilder(
stream: stream,
builder: (context, AsyncSnapshot<QuerySnapshot> snapshot) {
if (snapshot.hasData) {
var docList = snapshot.data.docs;
if (docList.isNotEmpty) {
Message message = Message.fromMap(docList.last.data());
return SizedBox(
width: MediaQuery.of(context).size.width * 0.6,
child: Text(
message.message,
maxLines: 1,
overflow: TextOverflow.ellipsis,
style: TextStyle(
color: Colors.grey,
fontSize: 14,
),
),
);
}
return Text(
"No Message",
style: TextStyle(
color: Colors.grey,
fontSize: 14,
),
);
}
return Text(
"..",
style: TextStyle(
color: Colors.grey,
fontSize: 14,
),
);
},
);
}
}
```
! [![message collection screenshot][1]]
! [1]: https://i.stack.imgur.com/Yq4Ll.png
当我试图从消息集合下的最后一个消息字段获取消息时,它返回的错误(即必须在Text小部件中提供空字符串)发生在Text(message.message)处。
首先,您必须在消息生成时存储时间戳。之后,您可以简单地对您的集合调用“orderby”,并按时间戳对其进行排序。
问题内容: 通过Rabbitmq中的示例,消费者可以一次从队列中获取所有消息。如何使用一条消息并退出? 问题答案: 您必须声明basicQos设置,才能一次从ACK到NACK状态获取一条消息,并禁用自动ACK以便显式给出确认。 希望能帮助到你!
在我的Scala(2.11)流应用程序中,我正在使用IBM MQ中的一个队列中的数据,并将其写入一个具有一个分区的Kafka主题。在使用MQ的数据之后,消息负载被拆分为3000个较小的消息,这些消息存储在字符串序列中。然后使用KafkaProducer将这3000条消息中的每一条发送到Kafka(2.x)。 你怎么发那3000条信息? 我不能增加IBM MQ中的队列数(不在我的控制之下),也不能增
问题内容: 我的Android手机上有此代码。 我有一个在页面中加载此的asp.net Webform应用程序 我想从HttpReponse获取此Response并打印出来。我该怎么做呢? 我试过了,但似乎只是打印出内存中的地址。 谢谢 问题答案: 使用。一行代码。有关使用它的示例Android项目,请参见此处和此处。 在http://www.androidsnippets.org/snipp
我正在开发一个使用Spring Integration 5.0.1和Spring Boot 2.0.0的应用程序。RC1 目前,应用程序响应并运行一些可能需要一段时间才能完成的初始化代码。这不使用任何Spring集成组件。 我还有一些非常基本的集成流,使用JavaDSL编写,并在配置中声明为bean。 有什么方法可以推迟流何时开始消耗消息吗?我希望能够在初始化完成时手动启动它们。 配置似乎是解决方
我有一种在shell中执行此任务的方法:如何使kafka消费者从上次消耗的偏移量读取,而不是从开始读取 但是,我愿意在Python中这样做,使用 我找不到任何关于这种情况的api。 http://kafka-python.readthedocs.io/en/latest/apidoc/KafkaConsumer.html
我们的应用程序中存在以下问题。消息通过入站通道适配器传入,并使用持久消息存储在聚合器中累积。一旦释放策略中定义的条件返回true,消息将被发送到处理的下一阶段。如果在下一个处理阶段抛出异常,事务将回滚,消息将再次放入持久消息存储中。但是,事务不会将消息放回原始队列,因为消息一旦放在聚合器中就会被确认。这不是我们想要的。理想情况下,如果在处理聚合器已批处理的其中一条下游消息时发生异常,则事务只会回滚