在以下示例中(从Flux project.toml复制的代码) [extras] 和 [targets] 部分的用途是什么?
[compat]
Adapt = "3.0"
ArrayInterface = "3.1, 4, 5, 6"
CUDA = "3"
.
.
.
Zygote = "0.6.34"
julia = "1.6"
[extras]
ComponentArrays = "b0b7db55-cfe3-40fc-9ded-d10e2dbeff66"
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
.
.
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
[targets]
test = ["Test", "Documenter", "IterTools", "LinearAlgebra", "FillArrays", "ComponentArrays"]
Run Code Online (Sandbox Code Playgroud) 我正在尝试更好地理解Ember SimpleAuth的Firebase身份验证器:
import Ember from 'ember';
export default Ember.Controller.extend({
actions: {
login: function() {
this.get('session').authenticate('authenticator:firebase', {
'email': this.get('email'),
'password': this.get('password')
}).then(function() {
this.transitionToRoute('index');
}.bind(this));
},
logout: function() {
this.get('session').invalidate().then(function() {
this.transitionToRoute('login');
}.bind(this));
}
}
});
Run Code Online (Sandbox Code Playgroud)
有人请解释".bind(this)"正在做什么,以及在这个特定实例中究竟绑定是如何工作的?
编辑:经过一番反思和研究,这是我对可能发生的事情的建议解释:
代码的".then"部分无法访问"this"的原始上下文.".bind(this)"将"this"(在本例中为当前控制器对象)的值设置为".then"函数内的"this".
这可以通过如下事实来证明:如果删除".bind(this)"部分,则代码的"transitionTo"部分不起作用.
另一方面,如果我们编写如下代码,我们不需要使用".bind(this)":
import Ember from 'ember';
export default Ember.Controller.extend({
actions: {
login: function() {
var _this = this;
this.get('session').authenticate('authenticator:firebase', {
'email': this.get('email'),
'password': this.get('password')
}).then(function() {
_this.transitionToRoute('index');
});
},
logout: function() {
var _this = this;
this.get('session').invalidate().then(function() {
_this.transitionToRoute('login');
}); …Run Code Online (Sandbox Code Playgroud) 我们正在建立一个员工敬业度调查平台,以Ember JS和Firebase为后端.
我们正在使用Firebase的电子邮件和密码身份验证来存储用户的密码.我们没有将密码存储在我们的firebase中.
应用程序流程如下:
从上面的工作流程可以看出,我们需要的一个功能是"电子邮件管理器",它根据用户的调查状态向用户发送电子邮件(例如:"未开始调查","部分完成调查"等)
在我们发送的电子邮件中,我们需要发送用户的登录凭据(即电子邮件和密码)以使其能够登录.示例电子邮件如下所示:
"
请使用以下访问详细信息通过此URL - www.voiceupsurvey.com登录您的调查:
电子邮件:bobtony@yourcompany.com
密码:XA3kdt3
"
您对我们如何做到这一点有什么建议吗?
具体来说,我不确定如何从Firebase身份验证存储中查询用户密码.