【发布时间】:2015-03-26 02:30:45
【问题描述】:
默认情况下,当我尝试使用{{> loginButtons}} 添加任何登录功能时,登录字段会包含在登录下拉菜单中。如何删除它?
我只想要由流星提供的电子邮件和密码字段(创建帐户,密码重置,包括),而不需要下拉菜单。
【问题讨论】:
标签: meteor user-accounts
默认情况下,当我尝试使用{{> loginButtons}} 添加任何登录功能时,登录字段会包含在登录下拉菜单中。如何删除它?
我只想要由流星提供的电子邮件和密码字段(创建帐户,密码重置,包括),而不需要下拉菜单。
【问题讨论】:
标签: meteor user-accounts
目前,自定义默认登录按钮外观并非易事。
您可以改为使用提供您正在寻找的帐户 UI 的第三方软件包,尝试使用“帐户”关键字搜索 http://atmospherejs.com/。
提供您自己的帐户 UI 模板并仅使用 Meteor 帐户 API 执行实际的日志记录逻辑可能更好。
这是我自己的登录表单模板,可帮助您入门:
<template name="loginForm">
<form class="login-form">
<div class="form-group">
<input type="text" class="form-control" name="usernameOrEmail"
placeholder="username or email">
</div>
<div class="form-group">
<input type="password" class="form-control" name="password"
placeholder="password">
</div>
<button type="submit" class="btn btn-default"
data-loading-text="Logging in...">
<i class="fa fa-lg fa-fw fa-check"></i> Login
</button>
</form>
</template>
Template.loginForm.events({
"submit":function(event,template){
event.preventDefault();
var submitButton=template.$("button[type='submit']");
submitButton.button("loading");
//
var usernameOrEmail=template.$("[name='usernameOrEmail']").val();
var password=template.$("[name='password']").val();
Meteor.loginWithPassword(usernameOrEmail,password,function(error){
submitButton.button("reset");
//
if(error){
console.log(error);
return;
}
//
template.find("form").reset();
});
}
});
定义一个表单模板,只包含您想要的字段,然后在提交事件处理程序中调用 Meteor 帐户 API 函数。
如果您遵循 API 文档,高级功能(重置密码、创建帐户等)非常简单:http://docs.meteor.com/#accounts_api
【讨论】: