我使用meteor包“useraccounts”,它为我提供了2种形式 - “登录”和“注册”。
我想在2种不同的模式中使用这两种形式 - 一种用于注册,另一种用于登录。
当我使用{{> atForm}}我可以在“登录”和“注册”状态之间切换,但在开始时它总是一个“登录”状态,无论我打开哪个模态。
因此,如果用户打开“register”模式,它应该显示“register”形式。如果“登录”模式 - “登录”形式“。
现在它在两种情况下总是处于“登录”状态。
当我使用{{> atForm state ='signUp'}}它禁用状态之间的切换,我需要保留此选项。
我怎么能实现这个目标?
答案 0 :(得分:1)
您只能为注册和登录模板实现一种模式。然后,您可以通过调用 AccountsTemplates.setState(new_state)
切换atForm
州。
例如:
Template.accountsModal.events({
'click #login': function(e) {
e.preventDefault();
AccountsTemplates.setState('signIn');
$('#accountsModal').modal();
},
'click #register': function(e) {
e.preventDefault();
AccountsTemplates.setState('signUp');
$('#accountsModal').modal();
}
});
<template name="accountsModal">
<div class="modal fade" id="accountsModal" tabindex="-1" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span>
</button>
<h4 class="modal-title">Modal title</h4>
</div>
<div class="modal-body">
{{> atForm}}
</div>
</div>
</div>
</div>
</template>