用户使用ian:accounts-ui-bootstrap-3在Meteor中验证电子邮件后运行一个函数?

时间:2015-07-07 04:44:42

标签: meteor

我已安装ian:accounts-ui-bootstrap-3。当用户验证了他们的电子邮件时,我希望Meteor将他们创建为条带客户。

/client/global_client_functions.js

Accounts.onEmailVerificationLink(function(){
    console.log("verification link clicked!");
    alert(Meteor.user()._id);
    Meteor.call("createStripeCustomer", Meteor.user()._id)
});
当我传入userId时,

Meteor.call("createStripeCustomer", Meteor.user()._id)工作得很好,花花公子。

Accounts.onEmailVerificationLink似乎永远不会被调用,我也没有得到错误" onEmailVerificationLink只能被调用一次"。

我正确使用Accounts.onEmailVerificationLink吗?我不想使用自己的帐户ui,所以我想坚持使用accounts-ui包。

1 个答案:

答案 0 :(得分:1)

假设您正在使用Iron router

这是meteor生成的默认链接

this.route('verify-emailHash',{
    controller: 'AccountController',
    path: '/#/verify-email/:token',
    action: 'verifyEmail'
})

//I changed my verification link like below
this.route('verify-email',{
    controller: 'AccountController',
    path: '/verify-email/:token',
    action: 'verifyEmail'
})

AccountController = RouteController.extend({
    verifyEmail: function () {
        Accounts.verifyEmail(this.params.token, function () {
            toastr.success("Email verified");
            alert(Meteor.user()._id);
            Meteor.call("createStripeCustomer", Meteor.user()._id)
        });
    }
});