此Meteor应用程序使用帐户密码包和删除了自动发布包的自定义登录表单,在服务器上使用Accounts.createUser
创建用户帐户。
即使在meteor mongo终端中创建并验证了db.users.find({}).pretty()
用户,浏览器控制台中的此命令Meteor.users.find().fetch()
也会提供一个空数组[]
修改
浏览器控制台中的Meteor.user()
会返回null
编辑2
触发Accouts.createUser的步骤如下:
模板按钮事件调用方法A,在服务器上它将用户名和密码存储在全局对象中,然后调用方法B,然后调用服务器端函数,该函数使用全局对象中的用户名和密码调用Acounts.createUser
server.js
Meteor.publish('users', function () {
if (this.userId) {
return Meteor.users.find({_id: this.userId});
}
});
client.js
Meteor.subscribe('users');
这是正常的吗?如果是这样,流星如何知道哪个浏览器“会话”属于哪个客户端?感谢
答案 0 :(得分:0)
查看Accounts.createUser的文档:
在客户端上,此功能在成功完成时以新创建的用户身份登录。在服务器上,它返回新创建的用户ID。
因此,如果您只从服务器创建用户,则用户将不会自动登录。如果用户未登录,则不会发布他/她的用户文档。
您有两种选择:
Accounts.createUser
。