如果有人问过这个问题,请接受我的道歉,我确信它有,我同样确信这是我遗漏的小事,没有正确理解。
我在本地运行以下https://autoform.meteorapp.com/updateaf
我专门使用updateaf 表单...并安装了所有必需的软件包,即accounts-passwords、accounts-ui 和accounts-base。
我的问题是如何在此界面中显示名字、姓氏和年龄字段的用户特定数据?
目前,无论我以谁的身份登录,我得到的只是每次提交。
如果有人问过这个问题,请接受我的道歉,我确信它有,我同样确信这是我遗漏的小事,没有正确理解。
我在本地运行以下https://autoform.meteorapp.com/updateaf
我专门使用updateaf 表单...并安装了所有必需的软件包,即accounts-passwords、accounts-ui 和accounts-base。
我的问题是如何在此界面中显示名字、姓氏和年龄字段的用户特定数据?
目前,无论我以谁的身份登录,我得到的只是每次提交。
我对 updateaf 没有任何经验,但我对 Meteor 做了很多。
我假设您只想显示当前登录用户的信息并允许他们更新它?
如果是这样,我认为您希望拥有一个仅发布当前用户信息的出版物(使用Meteor.userId()
,并且您可能必须将 People 对象的 ._id 链接到 Meteor userId),然后自动选择该数据。
从您提供的链接 ( https://autoform.meteorapp.com/updateaf ) 的 Javascript 部分更改了部分:
原文(只显示与 相关的东西selectedPersonId
,其余的都在链接上):
Meteor.publish(null, function () {
return People.find();
});
Template.updateaf.helpers({
selectedPersonDoc() {
return People.findOne(Session.get("selectedPersonId"));
},
isSelectedPerson() {
return Session.equals("selectedPersonId", this._id);
}
});
Template.updateaf.events({
'click .person-row'() {
Session.set("selectedPersonId", this._id);
}
});
更改为(而不是显示所有用户并允许他们通过单击进行更改,只需返回与 Meteor 用户对应的单个用户)(您可能需要更改/删除其他一些 js 函数以摆脱“人员列表”) :
Meteor.publish(null, function () {
return People.findOne({ _id: Meteor.userId() );
});
Template.updateaf.helpers({
selectedPersonDoc() {
return People.findOne({ _id: Meteor.userId() );
}
});
如果您有任何问题,请告诉我,希望对您有所帮助。
如果需要,可以添加一些其他教程: https ://guide.meteor.com/data-loading.html https://themeteorchef.com/tutorials/publication-and-subscription-patterns