3

我刚开始玩流星。它看起来棒极了。我想将注册过程从accounts-ui自定义为:

  1. 让用户在注册时输入其他数据(他们的生日)
  2. 在他们注册后,向他们展示另一个模式/页面,让他们输入更多数据。

我怎样才能做到这一点?

4

2 回答 2

3

或者您应该使用“meteor add accounts-password”然后您可以使用 Accounts.api 进行自己的注册过程。

http://docs.meteor.com/#accounts_createuser

根据需要制作表单,然后使用任何方式将表单数据传递给

Accounts.createUser(options, [callback])

就像是

var options = {
    username: $('#input-username').val(),
    password: $('#input-password').val(),
    profiles: {
        birthday: $('#input-birthday').val
    }
};
Accounts.createUser(options)
于 2012-10-27T16:10:41.367 回答
0

如果您使用 Accounts.createUser,您可以像这样在配置文件下存储其他数据。

Meteor.methods({
'createUser': function(firstname, lastname, username, twitter, email, password, role){
    Accounts.createUser({

        email: email,
        password: password,
        username: username,
        profile: {
            firstname: firstname,
            lastname: lastname,
            twitter: twitter,
            birthdate: birthdate
        }
    }); 
},

如果您想要第二个表单,您可以将用户路由到它。

Template.registerUser.events({
    'submit form': function(event){
        event.preventDefault();
        var firstname = event.target.firstnam.value;
        ...

        Meteor.call('createUser', clubName, capacity, description, homepage);
        Router.go('userInfoStep2');
    }
});

我想你也可以在 routfile 中进行重定向。

这是一个简单的解决方案,不会处理用户在中间中断注册过程的情况。但也许其他人可以提供帮助?

于 2016-04-24T12:23:02.113 回答