我想覆盖并使用我自己的表单重置密码
我安装了帐户-ui包我试过
Router.route( '/reset-password', {
path : '/#/reset-password/:slug',
name : 'forgot-password',
template : 'ResetPassword',
waitOn: function(){
console.log("reset link");
},
controller: MainRouteController
});
HTML中的
{{#if resetPassword}}
<form id="resetPasswordForm" method="post">
<input id="resetPasswordPassword" name="password" placeholder="New Password" type="password" >
<input id="resetPasswordPasswordConfirm" name="password-confirm" placeholder="Confirm" type="password" >
<input class="btn-submit" type="submit" value="Reset">
</form>
{{/if}}
</template>
在.js文件中
if (Accounts._resetPasswordToken) {
Session.set('resetPassword', Accounts._resetPasswordToken);
}
Template.ResetPassword.helpers({
resetPassword: function(){
return Session.get('resetPassword');
}
});
但它仍显示account-ui的重置密码对话框
答案 0 :(得分:4)
最佳解决方案是使用以下代码
更改resetPassword
的网址
Accounts.urls.resetPassword = function (token) {
return Meteor.absoluteUrl('resetPassword/' + token);
};
在Iron-router中使用您的链接
Router.route( '/resetPassword', {
path : '/resetPassword/:slug',
name : 'forgot-password',
template : 'ResetPassword',
waitOn: function(){
console.log("reset link");
},
controller: MainRouteController
});