Aka*_*Rao 0 javascript firebase ionic2 angular
我正在开发一个聊天应用程序Angular2, ionic2 and firebase
.为了得到聊天,我尝试了以下方法
控制器代码:
displayAllMessage() {
let myDataRef = new Firebase("firbaseurl");
myDataRef.on('child_added', function(snapshot) {
this.message = snapshot.val();
console.log(this.message);
});
}
Run Code Online (Sandbox Code Playgroud)
查看代码:
<h1> {{message.text}} </h1>
Run Code Online (Sandbox Code Playgroud)
但这里的问题是 - 如果我使用this.message
它是抛出错误说this.message
未定义,如果我使用var message
而不是this
然后它工作正常.如果我使用,var message
那么我无法在视图中显示它.
先感谢您.
使用箭头功能() => { ... }
而不是function () { ... }
保留范围this.
displayAllMessage() {
let myDataRef = new Firebase("firbaseurl");
myDataRef.on('child_added', (snapshot) => {
this.message = snapshot.val();
console.log(this.message);
});
}
Run Code Online (Sandbox Code Playgroud)
另请参见https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Functions/Arrow_functions
displayAllMessage() {
let myDataRef = new Firebase("firbaseurl");
myDataRef.on('child_added', function (snapshot) {
this.message = snapshot.val();
console.log(this.message);
}.bind(this));
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
587 次 |
最近记录: |