当我尝试使用跟随按钮时,我试图制作以下功能我得到了#34; Uncaught RangeError:超出了最大调用堆栈大小"如果我将.val()
添加到Meteor.users.update(Meteor.userId(), {$addToSet: {'profile.following': usern}});
的末尾,则会将" "
返回到profile.following
,它应返回用户所在的个人资料的用户名。在这里感谢先进的代码。
Template.user_profile.events({
'click #follow':function () {
var usern=$("#username");
Meteor.users.update(Meteor.userId(), {$addToSet: {'profile.following': usern}});
return Meteor.user().profile.following;
}
})
HTML
<template name="user_profile">
<h2 id="username">{{username}}</h2>
<div>{{profile.followingnumber}}</div>
<div>{{profile.followedbynumber}}</div>
<div>{{profile.bio}}</div>
<button id="follow">Follow</button>
</template>
服务器端
Accounts.onCreateUser(function(user) {
user.profile.following=[];
user.profile.followingn=0;
user.profile.followed=[];
user.profile.followedn=0;
return user;
});
答案 0 :(得分:0)
在事件处理程序中,您可以使用this
访问当前数据上下文,而不是jQuery
访问用户个人资料用户名(您应该使用$("#username").text()
,{{1仅用于表单元素!),只需使用.val()
。
所以这就是你应该提出的:
this.username
没有特别需要在此点击事件中返回当前用户的关注列表,而不是首先确定您的意图。