我正在尝试设置一个组页面,该页面将显示有关该组和组成员的信息。如果用户在该组中,它将显示该信息,但如果用户不在该组中,则不会显示该信息,并且它将告知用户他们不是该组的成员。
基团的方式/ template.hbs
{{#if isMember}}
'display group info'
{{else}}
'do not display group info'
{{/if}}
当我到达页面并单击某个组时,控制台会在该组中打印出正确的成员ID列。但是当我点击第二组时,它会打印出第一组的ID,当我点击第三组时,它会打印出来自第二组的ID,等等。
我不确定为什么控制台信息总是在我选择的组后面点击一下。我一直在尝试使用mapBy
和map
方法,但我不知道是否有更好的方法可供使用,或者我是否以错误的方式接近此方法
基团的方式/ component.js
import Ember from 'ember';
export default Ember.Component.extend({
individualIds: Ember.computed.map('groupinfo.individuals', function(param, index) {
return parseInt(param.id);
}),
isMember: Ember.computed('idOfIndividuals', 'session.individual_id', function() {
return this.get('individualIds').contains(this.get('session.individual_id'));
})
});
检查登录用户(session.individual_id
)是否为群组成员并且能够查看该群组的最佳方法是什么?
答案 0 :(得分:0)
我没有检查session.individual_id
是否是groupinfo.individuals
中的个人ID之一,而是决定检查用户点击的群组的id
是否与{{1}匹配用户所属的任何组。
我还需要将当前用户的信息传递给id
组件。
基团的方式/ component.js
group-info