Angular 4 - 登录成功后,在localStorage中存储数据

时间:2017-09-27 00:07:01

标签: angular

我有一个登录功能,我只想在登录有效时将数据存储在localstorage中,但在我的情况下,即使登录无效,它仍然将数据存储在localstorage中。

组件

 onSubmit = function(formData) {
   this._membersService.login(formData);
   localStorage.setItem('loginSessId', formData.acct_username);
 }

服务

login(data) {
  return this._http.post('http://localhost/membership/main/login', data)
  .subscribe(data => data);
}

1 个答案:

答案 0 :(得分:4)

您必须在组件中订阅,并且只有在成功时才可以这样做:

<强>组件

onSubmit = function(formData) {
  this._membersService.login(formData).subscribe((response) => {
    localStorage.setItem('loginSessId', formData.acct_username);
  },
    (err) => console.log(err)
  );
}

<强>服务

login(data) {
  return this._http.post('http://localhost/membership/main/login', data);
}
相关问题