AngularFire2,snapshot.val返回undefined

时间:2017-09-16 21:35:38

标签: angular firebase angularfire2

我想记录'Checker'(布尔值)的值,但它总是返回'undefined'。我的代码如下:

  loginUser(key: string, Checker: boolean) {
   if (!this.loginForm.valid) {
   *doesn't matter*
   } else {
   *doesn't matter*
   ...
    var checked = this.af.object('/Users/' + key, 
    {preserveSnapshot: true});
    checked.subscribe(snapshot => {
        console.log(snapshot.key);
        console.log(snapshot.val.Checker);
      });
   }

控制台上的输出是:

*key*
*undefined*

1 个答案:

答案 0 :(得分:0)

this.af.object(`/users/${key}`, {preserveSnapshot: true})
  .subscribe( snapshot => {
  let value = snapshot.val()
  let key = snapshot.key

注意使用template literals,你可以在.object()调用中使用反引号(模板文字)来直接插入变量。您应该阅读angularfire2文档。