0
当用户创建他们给出了两个用户选择之间选择一个配置文件,这意味着他们的用户配置文件对象看起来像:路由用户基于配置文件参数登录后
{
name: "Jane Doe",
userType: "user-A"
}
我想什么要做的是设置一个重定向,其中,一旦用户登录,它将检查他们是什么类型的用户并将他们重定向到一个页面。
如果USERTYPE =用户A,他们会去为localhost:3000 /用户-A
如果USERTYPE =用户B,他们会去为localhost:3000 /用户-B
我目前使用铁路由器为我的路线和账户,密码账户
我试图在客户端以下,但它打印出空
Template.login.events({
'submit #at-pwd-form': function() {
console.log(Meteor.userId());
}
});
编辑1
试图从下面的代码,以及在服务器端做到这一点,但我正在逐渐铁路由器错误:
Accounts.onLogin(function() {
var pathToProfile = "/" + Meteor.user().profile.userType;
console.log(pathToProfile); // Proof that variable is being saved properly
Router.go(pathToProfile);
});
错误:
I20160811-22:58:28.560(-4)? Exception in onLogin callback: TypeError: Object function router(req, res, next) {
I20160811-22:58:28.560(-4)? //XXX this assumes no other routers on the parent stack which we should probably fix
I20160811-22:58:28.560(-4)? router.dispatch(req.url, {
I20160811-22:58:28.560(-4)? request: req,
I20160811-22:58:28.561(-4)? response: res
I20160811-22:58:28.561(-4)? }, next);
I20160811-22:58:28.561(-4)? } has no method 'go'
I20160811-22:58:28.561(-4)? at server/main.js:13:10
I20160811-22:58:28.561(-4)? at runAndHandleExceptions (packages/callback-hook/hook.js:133:1)
I20160811-22:58:28.561(-4)? at packages/callback-hook/hook.js:140:1
I20160811-22:58:28.562(-4)? at packages/accounts-base/accounts_server.js:167:5
I20160811-22:58:28.562(-4)? at [object Object]._.extend.each (packages/callback-hook/hook.js:109:1)
I20160811-22:58:28.562(-4)? at AccountsServer.Ap._successfulLogin (packages/accounts-base/accounts_server.js:166:21)
I20160811-22:58:28.562(-4)? at AccountsServer.Ap._attemptLogin (packages/accounts-base/accounts_server.js:355:10)
I20160811-22:58:28.562(-4)? at [object Object].methods.login (packages/accounts-base/accounts_server.js:532:21)
I20160811-22:58:28.562(-4)? at maybeAuditArgumentChecks (packages/ddp-server/livedata_server.js:1704:12)
I20160811-22:58:28.563(-4)? at packages/ddp-server/livedata_server.js:711:19
我不熟悉你使用的框架,但在客户端,你可以设置'locatio n“对象,而在服务器端,您可以发送带有302 HTTP响应(临时重定向)的Location标头 – rvighne
如果您得到空值,则表示没有用户登录。[Meter.userId()]( https://docs.meteor.com/api/accounts.html#Meteor-userId) – Zesky
@泽斯基权利,多数民众赞成我想弄清楚。我想要做的是,一旦用户登录,找出他们的用户类型并将其重定向到特定页面。 –