在客户端,我有$ scope.loggedInUser,它引用猫鼬用户架构。我正在使用的另一个模式是对话模式。每个用户都可以加入对话,在这种情况下,他将被添加到session.participants数组中,该数组的定义如下:
var conversationsSchema = new Schema({
participants: {type: Array, default: []}
});
我只想在参加者数组中显示与当前用户(即,LoggedInUser)的对话。我试过了
ng-repeat="conversation in conversations" ng-if="conversation.participants.indexOf(logged_in_user) > -1"
但我没看到。如何检查ng-if中的元素是否正确存在于数组中(或通常以角度存在)?
您可以使用类似的过滤器
ng-repeat="conversation in conversations | filter:logged_in_user"
我不确定视图方面的实现是否会挖掘到嵌套集合中,您可能必须在控制器中对其进行过滤
filteredConversations = $filter(this.conversations,
{name:logged_in_user},doFiltering);
在哪里进行过滤是执行实际工作的一种方法,例如:
function (actual, expected) {
return actual.participants.indexOf(expected) > -1;
}
如果在控制器端执行此操作,请确保将$ filter注入到控制器中。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句