【发布时间】:2020-02-19 22:58:48
【问题描述】:
我使用 ember 简单身份验证来验证我的用户。 除非用户刚刚登录,否则它工作得非常好。
我有一个助手询问当前用户:
import Helper from '@ember/component/helper';
import { inject as service } from '@ember/service';
export default Helper.extend({
currentUser: service('current-user'),
compute([feature,currentUser]) {
let role = currentUser.get('user.role')
Helper 用在模板嵌入到 application.hbs 中的模板中
{{#if (permission-for "users" currentUser)}}
<li>{{#link-to 'users'}}<i class="fa fa-user"></i> <span>Clients</span>{{/link-to}}</li>
{{/if}}
当前的用户服务与文档中的这个重复:https://github.com/simplabs/ember-simple-auth/blob/master/guides/managing-current-user.md#loading-the-user-with-its-id
我的 application.js 也在使用同一指南中的代码。
根据我的尝试,sessionAuthenticated 开始运行,在await this._loadCurrentUser(); 期间执行助手,并完成运行sessionAuthenticated
我想要的用户属性未定义,导致无法根据用户的角色显示界面元素。
我该如何解决这个问题?
编辑相关问题:如何在模板中使用 ember simple auth 来确定用户是否应该看到界面的某些部分?例如菜单选择。
【问题讨论】:
-
你是如何使用助手的?
-
编辑了问题
标签: ember.js ember-simple-auth