如何在Meteor.js中实现更改电子邮件功能

时间:2014-05-25 10:10:07

标签: email meteor

我想为在Meteor.js上构建的应用程序实现更改电子邮件功能

流程将是:

1.用户将通过“更改电子邮件”表单请求更改电子邮件。

    <div class="settings-container">
        <div class="container-header medium-margin-top bold">Change Email</div>
        <div class="container-inner less-margin-top">
            <form>
                <div>
                    <dl>
                        <dt><label for="user_email_address">Email Address</label></dt>
                        <dd><input type="email" class="form-control" id="new-email"></dd>
                    </dl>
                </div>
                <button type="submit" id="btn-change-email" class="btn btn-success">Send Verification Link</button>
            </form>
        </div>
    </div>

2.表格使用Accounts.sendVerificationEmail

发送验证邮件

我创建了一个方法,当需要发送验证邮件时调用该方法

change_email: function(userId, email) {
    Accounts.sendVerificationEmail(userId, email);
},

3.一旦用户验证新的电子邮件地址,电子邮件地址就会更改。

我无法想到第三步的正确解决方案。我想过使用 Accounts.verifyEmail ,但想不出办法更改电子邮件地址。

1 个答案:

答案 0 :(得分:2)

好像你正在倒退它。您应首先将新电子邮件添加到Meteor.user.emails阵列,或者如果您确实要更新现有条目,则应替换现有条目,而不是使用对多个电子邮件地址的内置支持。然后您可以发送验证邮件。