大家好,
我目前正在为无头 Discourse 服务器构建一个 React 前端。
我正在实现通知计数功能,类似于此处用户头像上方的显示。我希望通过 Discourse 的 message_bus 使用长轮询来近乎实时地更新该计数。
我看过 message-bus.js 文件,但它非常冗长,且对于现代应用来说已过时。我们本应将其作为 React 应用的一部分来处理,而不想引入 jQuery 和全局对象。
另外,我在 /initializers/subscribe-user-notifications.js.es6 中看到我们订阅了 /notification/userid,但我找不到关于可订阅频道及其响应格式的文档。
我正在寻求关于在现代 JavaScript 应用中订阅 message bus 的最佳实践方法的帮助。
谢谢!
2 个赞
david
(David Taylor)
2
Discourse 确实是一个现代 JavaScript 应用 
最好的方法是使用 message-bus 库。目前它依赖于 JQuery,但如果您想提交拉取请求以移除该依赖,我相信这会被考虑。
Messagebus 仅设计用于 Discourse 内部,它并非真正的“公共”API。最好的信息来源是代码库中的 JavaScript 文件,您已经找到了它们 
感谢 @david 和 @sam,我并非意在暗示 Discourse 不是现代应用——它显然是。我最初看到的是 message-bus.js,因此不确定这是否真的是最佳实践。既然它能正常工作,那就没问题了。
谢谢!
3 个赞
sam
(Sam Saffron)
5
Discourse 核心使用的是完全相同的文件,这确实是正确的文件 ™
1 个赞