
无法正常接收 flet 广播消息的解决方法
在使用 flet 的订阅广播功能时,如果遇到只能收到发送方自己消息的问题,可以尝试以下解决方法:
官方示例中将 main 函数标记为异步函数后,pubsub 的 subscribe_async 和 send_all_async 需要使用 await 关键字,否则会导致消息无法正常发送和接收。
修改后的代码如下:
async def main(page: ft.Page): page.title = "Flet Chat" async def on_message_async(msg): messages.controls.append(ft.Text(msg)) await page.update_async() await page.pubsub.subscribe_async(on_message_async) async def send_click(e): await page.pubsub.send_all_async(f"{message.value}") message.value = "" await page.update_async() messages = ft.Column() message = ft.TextField(hint_text="Your message...", expand=True) send = ft.ElevatedButton("Send", on_click=send_click) await page.add_async(messages, ft.Row(controls=[message, send]))
另外,据官方作者反馈,这是一个 flet 框架的 bug,已联系作者并得到确认。
以上就是Flet广播消息无法接收怎么办?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1353956.html
微信扫一扫
支付宝扫一扫