sách gpt4 ăn đã đi

dart - 对于 "pubsub.stream.listen(print, onDone: (){print(' 完成')})。 ", the "完成 :"never work

In lại 作者:IT王子 更新时间:2023-10-29 06:33:33 33 4
mua khóa gpt4 giày nike

从 Redis 获取消息时,onDone:(){print('done')} 从未起作用。

import 'package:dartis/dartis.dart' as redis show PubSub;

void main() async {
final pubsub = await redis.PubSub.connect
String>('redis://localhost:6379');

// Subscribe to some channels and patterns
pubsub
..subscribe(channel: 'dev.dart')
..psubscribe(pattern: 'message');

// Listen for server replies
pubsub.stream.listen(print, onDone: (){
print('done');
});

我想要的只是在收到新消息时使用从 Redis 收到的消息运行自定义函数。紧急求救!

câu trả lời hay nhất

在这个片段中

pubsub.stream.listen(print, onDone: (){
print('done');
});

in 的第一次出现称为撕裂,相当于:

pubsub.stream.listen((event) => print(event), onDone: (){
print('done');
});

您应该看到打印的每个事件。

Suối 发出 MessageEvent - 请参阅 tài liệu . MessageEvent 具有属性 channeltin nhắn

编写自己的函数来处理事件(例如)

void handleEvent(MessageEvent event) => print(event.message);

然后像这样使用它

pubsub.stream.listen((event) => handleEvent(event), onDone: (){
print('done');
});

或者,像这样重新引入撕纸

pubsub.stream.listen(handleEvent, onDone: (){
print('done');
});

关于dart - 对于 "pubsub.stream.listen(print, onDone: (){print(' 完成')})。 ", the "完成 :"never work,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54060883/

33 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress