首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Torii在Ember中获取当前用户会话的最佳方法

使用Torii在Ember中获取当前用户会话的最佳方法
EN

Stack Overflow用户
提问于 2016-04-20 19:23:59
回答 1查看 773关注 0票数 0

我想知道最好的方法是获取当前登录用户的用户模型记录。我正在使用torii与相应的firebase适配器相结合。

app/torri-adapters/application.js

代码语言:javascript
复制
import Ember from 'ember';
import ToriiFirebaseAdapter from 'emberfire/torii-adapters/firebase';

export default ToriiFirebaseAdapter.extend({
  firebase: Ember.inject.service()
});

例如:我有一个客户机模型,此时我有一个非常难看的解决方案来查询与当前登录用户相关的所有客户端记录:

app/routes/clients.js

代码语言:javascript
复制
import Ember from 'ember';

export default Ember.Route.extend({
  model: function() {
    var _this = this;
    return this.store.query('user', {
      orderBy: 'email',
      equalTo: this.get('session.currentUser.email')
    }).then(function(user) {
      var myUser = user.get('firstObject');
      return _this.store.query('client', {
        orderBy: 'user',
        equalTo: myUser.id
      }).then(function(client) {
        return client;
      });
    });
  }
});

肯定有更好的方法吗?

EN

回答 1

Stack Overflow用户

发布于 2016-04-21 04:09:01

您可以在应用程序初始化时将currentUser注入到所有控制器、路由和组件中,因此只要在需要的地方执行this.get('currentUser'),就可以引用当前用户。请参阅下面的部分,该部分展示了如何在此处完成此操作:https://guides.emberjs.com/v2.5.0/applications/dependency-injection/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36753282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档