问题标签 [emberfire]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
269 浏览

ember-data - 基于 auth id 的动态适配器 pathForType

有没有办法在模型适配器的路径中包含用户的身份验证 uid?例如,假设您有一个聊天应用程序和一个conversation模型来表示两个用户之间的私人消息会话,其中数据存储如下:

因此,使用这种结构,适配器的路径需要是conversations/<currentUserAuthUID>.

(仅供参考,这是一个 ember-cli 项目,如果这有什么不同的话。)

0 投票
1 回答
107 浏览

ember.js - 不会自动获取异步记录

我正在尝试通过 Firebase 支持的 ember 应用程序显示一些 CI 信息。如果我这样做,this.store.find('plan');它会获取并显示所需项目的计划,但它不会像我想要的那样自动异步获取计划。我不太确定我做错了什么。

我的模板

当我尝试访问 project.plans 属性时,如何让 ember-data 异步关系自动获取?

编辑:

我尝试使用 Ember-CLI 的 http-mock 进行模拟,并将以下内容发回/projects

现在正在添加计划数组。我现在只需要弄清楚这在firebase上是如何工作的。

0 投票
1 回答
207 浏览

ember.js - 使用以前删除的 ID 创建的记录会生成未捕获的错误

在我的应用程序中,我有一个我认为是相当标准User的模型,其 ID 基于经过身份验证的用户的fbRef.getAuth().uid值(在我的情况下由匿名身份验证提供程序分配)。我有一个全局用户,它随着用户身份验证/取消身份验证而动态更新,使用基本this.store.find('user')调用填充。

当用户注销,然后使用相同的身份验证 uid 重新验证/登录时,就会出现问题。我在其他当前连接的浏览器的控制台中收到以下错误:

未捕获的错误:尝试pushedData在状态为 root.deleted.uncommitted 时处理事件。

(但是请注意,执行注销/重新登录的用户/浏览器没有收到错误)

在这种情况下我还需要做些什么来确保 emberfire 自动删除的记录在每个连接的客户端的缓存存储中完全提交,或者这是某种限制?

作为参考,以下是我在用户登录时创建记录的方式:

当他们退出时:

0 投票
2 回答
674 浏览

ember.js - 如何从 Ember 中的另一个控制器访问模型

这是一个新手问题:我正在商店(Ember-data)中创建一个新的章节记录。我想将章​​节 ID 添加到用户模型记录的 User.chapters 属性中。

我创建了一个注入到路由和控制器中的 Session 对象

但是,Session 对象不是 Model,无法使用 Save() 方法保存到 Store:

我探索的另一个选项是从用户路由模型挂钩访问用户记录。用户路线:

我尝试需要从章节控制器访问用户记录:

但是,用户仍然不可用。

我想象我的语法不正确。如果有人能告诉我一种访问用户记录的正确方法,我将不胜感激,这种方法可以从章节控制器修改和保存。

Chapters 路由没有嵌套在 User 路由下,因为模板没有嵌套。即使模板没有嵌套使用 ModelFor(),我是否应该在用户路由下嵌套章节路由?

0 投票
1 回答
95 浏览

ember.js - 在哪里使用适配器使用 customToken 进行身份验证

我们正在尝试使用 customToken 向 Firebase 进行身份验证 - 在我们迁移到 EmberCLI 之前,这一直有效,因为我们在应用运行时的后期启动了这些 Firebase 特定的适配器。

现在尝试在适配器的较早阶段启动 authCustomToken,流程如下:

  • 启动适配器
  • 挂钩“init”并从后端请求令牌
  • 收到令牌时 - authWithCustomToken

代码看起来很像这样:

解决这个问题的最佳方法是什么?

0 投票
1 回答
482 浏览

firebase - Firebase 自定义唯一 ID

在我的 EmberFire 应用程序中,URL 如下所示:

有没有办法自定义 Firebase 中的唯一 ID,如下所示:

0 投票
1 回答
189 浏览

ember.js - 如何组织我的模型

我尝试建立一个简单的聊天。用户可以选择另一个与之交谈。我将 Ember 与 Firebase 一起使用。我已经建立了我的模型,例如 firebase 示例。

这是我的简单模型。用户模型:

消息模型:

Emberfire 不支持“findQuery”余烬数据类型搜索,那么我如何检索属于对话的所有消息?这是定义我的模型的正确方法还是有另一种方法?在理想情况下,我只想用一个请求检索所有消息。(从所有者到目标,从目标到所有者)

0 投票
1 回答
301 浏览

ember.js - Firebase 的基本安全规则

我在使用 Firebase 实施基本安全规则时遇到问题(我阅读了有关 Firebase 和 StackExchange 的文档,但无法使安全规则生效):

模型(模型的 Emberjs 表示):

这 3 个节点(模型)直接存储在 Firebase 应用的根目录中。Book 和 Action 模型有一个user字段(属性)。

编写规则是什么,以便:

  1. 只有 Book 和 Action 模型(节点)的 user 字段中标识的用户才能对自己的数据进行读写访问?(userBook 和 Action 中的字段值必须等于auth.uidFirebase 中的值,用户才能被授予读写权限。)
  2. 用户只能访问属于他们的用户模型(节点)的信息吗?

谢谢

0 投票
1 回答
135 浏览

ember.js - 保存 Ember 数据记录

问题:

  1. 这行代码_activeAuthor.get('books').pushObject(book).save();在 Chrome 中被正确处理,但是这本书没有添加到 Ember-Data 的 _activeAuthor 实例的 books 属性中。我不明白为什么?
  2. 下面的代码将创建的 Book 添加到 Chapter 实例的 Book 属性(见注释)。它是一对多的关系(参见模型)。Ember-Data 似乎会自动填充 Book 实例上的相关记录。这是 Ember-Data 的正常行为吗?我应该让 Ember-Data 以一对多的方式填充关系的相关方,还是应该指定双方并保留两个实例?
  3. 我怀疑以下代码的问题之一是我没有正确处理承诺。此代码:this.modelFor('user').get('latestChapter');似乎返回了一个承诺。我应该如何处理承诺get()

代码:

楷模:

谢谢!

0 投票
1 回答
82 浏览

javascript - Ember.js 身份验证操作不起作用

这是我第一次使用 ember.js。当用户成功登录(经过身份验证)时,我正在尝试使用控制器执行操作。但是,我当前保存用户状态甚至更改属性 'this.set('userSignedIn', state);' 的方法 不管用。我不确定为什么,我猜这与我的“状态”变量的范围有关,或者“this”对象可能没有传递给“ref.authWithOAuthPopup()”。我希望有人能指出正确的方向。