javascript - 通过端口与 Elm 进行外部 Firebase 通信?

标签 javascript firebase firebase-authentication elm

我有自定义 Firebase 身份验证流程(Auth0 => Firebase),因此,一旦我从 sessionStorage 或新的 session 存储中获得成功的 JWT token ,我就使用 TypeScript 和 Svelte 运行所有登录逻辑。登录后,我启动 Elm 应用程序,通过标志向其发送一些 JWT 和个人资料信息。它是一个 SPA,带有路由和页面,全部组件化并且工作正常。

我现在唯一真正的问题是,当涉及到 Firebase 时,当然,ElmFire 存在,但我如何给它一个有效的身份验证 token 等。并且在不加载适用于 JS 的 Firebase 和适用于 Elm 的 ElmFire 的情况下,看起来就像太多 Kb 了。

有没有一种好的、有效的方法让 Elm 输出“嘿,听听这个引用文献”,以及“嘿 Elm,我有一些关于这个引用文献的新数据”。端口告诉 JS 监听,订阅告诉 Elm 新数据。无需为每个监听器提供端口,也无需为每个数据回调提供订阅。

理想情况下,我希望我的更新能够发送接受回调消息的 CMD,更新要调用的函数和引用。这样我就可以将其存储在某种列表中,当我从 JS 获取新的数据有效负载时,我可以循环遍历我的列表以查找与引用匹配的项目,执行更新,发送带有以下内容的消息:字符串值,因此解码发生在页面更新时。

Someone feel free to abstract this question into something more general. Feel like this question is something more people might have.

最佳答案

问题是 port/sub 必须在 Elm 中输入。

因此,具有一个参数的单个端口/子可以监听多个引用,只要它们都具有相同的类型。

如果没有,您可以使用多个参数定义端口/子端口,每个参数对应您要交换的每种数据类型,并在适当的参数中传递任何特定数据。其他参数将为空。

关于javascript - 通过端口与 Elm 进行外部 Firebase 通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41694843/

相关文章:

javascript - JavaScript 中 new Date() 的 Number 方法

javascript - 无法通过推送 ID 引用 firebase 数据

swift - 密码恢复/重置

Android FirebaseUI : Showing a button even when only one provider is chosen

android - Firebase:从 UID 获取 DisplayName

javascript - 为什么使用 body 解析器未定义 req.body ?

javascript - 如何判断 ASP 中的页面卸载是否是 PostBack

javascript - JQUERY - 单击后将 CSS 类添加到 BUTTON 元素

swift - 使用 swift 从 firebase 获取数据范围

javascript - Firebase Facebook 登录并重定向返回空电子邮件