如何修改 auth 智能包?
例如注册后的下拉框显示按钮更改密码和退出。我想添加一个编辑帐户按钮。如何?
谢谢。
要添加编辑按钮,请看这里: https ://github.com/meteor/meteor/tree/master/packages/accounts-ui-unstyled
具体来说,login_buttons.html文件。
更新:链接文件顶部有一条注释:
注意:您不应该直接使用这些模板。相反,使用全局 {{loginButtons}} 模板。
因此,您应该在您的流星安装中找到这些文件(我的在 中C:\Program Files (x86)\Meteor\packages\accounts-ui\login_buttons.html
)并编辑该文件。
请注意,这将修改所有流星应用程序的帐户 UI。如果您不希望您的更改影响您的其他流星应用程序,您可能必须“分叉”您自己的 accounts-ui 包。
有关于使帐户 UI 更可定制的讨论(如可覆盖的模板),但在当前版本的 Meteor 中是不可能的。我建议向流星开发人员描述您的用例。流星开发者公开欢迎反馈:
请反馈!我们很好奇的一些特定领域:
您想对 loginButtons 模板进行何种自定义?
您可能会使用哪种帐户限制?每个人都必须有一个用户名?每个人都必须有一个电子邮件?
您可以覆盖loginButtons
, 因为目前默认的帮助器对象由于某种原因是公共的:
Handlebars._default_helpers["loginButtons"] = function(options) {
return "hello this is test";
};
原始辅助函数如下所示:
Handlebars.registerHelper(
"loginButtons",
function (options) {
if (options.hash.align === "right")
return new Handlebars.SafeString(Template._loginButtons({align: "right"}));
else
return new Handlebars.SafeString(Template._loginButtons({align: "left"}));
});
_loginButtons
在这里,您可以用自己的模板替换默认模板。
然而,这很容易被未来版本的流星打破,因为Handlebars._default_helpers
并不是真的打算以这种方式使用。但至少你不必使用流星叉。
此外,您必须确保在完成后添加您的助手accounts-ui-unstyled
。因此,如果您在另一个包中使用此技巧,请务必声明accounts-ui-unstyled
为依赖项。