我对发送验证邮件和弹出对话框有一些疑问。
我正在使用铁路由器,帐户 - * packages /
答案 0 :(得分:15)
要更改验证邮件,请按以下网址使用的模板进行操作:https://github.com/meteor/meteor/blob/devel/packages/accounts-password/email_templates.js
例如(取自上面的网址),有很多可定制的内容。
Accounts.emailTemplates.verifyEmail = {
subject: function(user) {
return "How to verify email address on " + Accounts.emailTemplates.siteName;
},
text: function(user, url) {
var greeting = (user.profile && user.profile.name) ?
("Hello " + user.profile.name + ",") : "Hello,";
return greeting + "\n"
+ "\n"
+ "To verify your account email, simply click the link below.\n"
+ "\n"
+ url + "\n"
+ "\n"
+ "Thanks.\n";
}
}
要注册,请不要在客户端使用Accounts.createUser
。使用方法/调用将消息代理到服务器
客户端
Meteor.call("registerMe", username, password, function(err, result) {
});
服务器端:
Meteor.methods({
registerMe: function(username, password) {
return Accounts.createUser({username: username, password: password});
}
});
您可以通过从项目中删除accounts-ui并添加无样式的内容来自定义account-ui内容,然后单独添加样式
meteor remove accounts-ui
meteor add accounts-ui-unstyled
meteor add less
然后使用https://github.com/meteor/meteor/blob/devel/packages/accounts-ui/login_buttons.less中的.less
文件进入您的项目并根据您的偏好进行自定义。
答案 1 :(得分:4)
Accounts.validateLoginAttempt(function(type){
if(type.user && type.user.emails && !type.user.emails[0].verified )
throw new Meteor.Error(100002, "email not verified" );
return true;
});