2017-06-05 117 views
0

我有一个错误离子2:未定义不是一个对象

未定义没有(评价 'this.email = '123'')的对象

这是为什么?

我离子2码控制器:

email:string = '' ; 

facebook_login() { 

    this.fb.login(['public_profile', 'email']) 
     .then((res: FacebookLoginResponse) => { 

      this.fb.api("/me?fields=name,email", []).then(function(user) { 

       this.email = '123' ; 

      }) ; 

    }).catch(e => { 
     alert('Error login') ; 
    }); 

} 

回答

2

使用箭头功能回调() => {}

this将指向函数对象而不是您的示例中的类。

this.fb.api("/me?fields=name,email", []).then(function(user) { 

       this.email = '123' ; 

      }) ; 

更改上述给:

this.fb.api("/me?fields=name,email", []).then((user) => { 

       this.email = '123' ; 

      }) ; 
相关问题