Les documents spécifient d'utiliser le modèle {{> loginButtons}}
pour implémenter les boutons de connexion par défaut.
Quelle est la meilleure façon d'appliquer mes propres styles à cela?
!important
Il s'avère qu'une combinaison des deux idées peut être utilisée. Après avoir plongé dans le package accounts-ui , il s'avère qu'il ne contient qu'un seul .less
fichier. Le modèle réel est inclus dans accounts-ui-unstyled , qui est automatiquement inclus lorsque accounts-ui
est ajouté à un projet meteor
.
Par conséquent, le CSS peut être supprimé comme suit:
meteor remove accounts-ui
meteor add accounts-ui-unstyled
Vous vous retrouvez alors avec le HTML brut , qui peut être stylisé comme vous le souhaitez.
La création de vos propres modèles vous donnerait certainement plus de contrôle.
Vous créez un modèle en utilisant la balise "modèle":
<template name="player">
<div class="player {{selected}}">
<span class="name">{{name}}</span>
<span class="score">{{score}}</span>
<span class="wins"> {{wins}} </span>
<span class="losses"> {{loss}} </span>
</div>
</template>
OU Vous pouvez vérifier les "classes" ou l '"id" des boutons de connexion après leur rendu sur une page Web, en utilisant "Inspecter l'élément" sur Chrome, Et utilisez ces classes comme sélecteurs CSS pour les styliser en conséquence.
Par exemple:
HTML:
//The login button has a class of loginButton
<button class="loginButton"> Login! </button>
CSS:
#Then you can Have a style for the login button as:
.loginButton{
width: 100px;
background-color: cyan;
}
Commander ce screencast EventedMind - Personnalisation de la connexion
Créez votre propre modèle html
similaire à celui ci-dessous. Portez-le à votre goût.
meteor add accounts-password accounts-ui
<template name="login">
<form class="login-form">
<div class="panel panel-default">
<div class="panel-heading">
<h3>Login</h3>
</div>
<div class="panel-body">
<div class="form-group">
<label>Email</label>
<input type="email" class="form-control" id="email" placeholder="Email address">
</div>
<div class="form-group">
<label>Password</label>
<input type="password" class="form-control" id="password" placeholder="password">
</div>
</div>
<div class="panel-footer">
<button type="submit" class="btn btn-danger btn-lg">Login</button>
</div>
</div>
</form>
</template>
Vous pouvez maintenant appeler Meteor.loginWithPassword
Dans l'événement modèle comme ceci:
Template.login.events({
'submit .login-form': function(e) {
e.preventDefault();
var email = e.target.email.value;
var password = e.target.password.value;
Meteor.loginWithPassword(email, password,function(error){
if(error) {
//do something if error occurred or
}else{
FlowRouter.go('/');
}
});
}
});
Vous pouvez également créer un autre formulaire d'inscription.
Appelez simplement Accounts.createUser(object, callback);