javascript - TypeScript Angular 2 响应订阅

标签 javascript typescript angular

我正在尝试从我的 api 返回信息,但我不明白如何正确使用订阅。使用数组时,我从我的服务返回一个空数组,并在获取值时将其推送到其中。

我如何在 app-component ts 中正确地只返回一个值变量。现在如果我执行 alert(JSON.stringify(authenticated)) 它只会给我 {"_isUnsubscribed":false,"_subscriptions":[{"isUnsubscribed":false}]}

应用组件 ts

checkAuthentication(){
  var authenticated = this._authService.getAuthenication();
}

认证服务

 getAuthenication() {
      return this._http.get('auth.php').subscribe(res => {
        if (res.json().authenticated === true){
          return true;
        }
        return false;
      });
  }

auth.php

<?
session_start();
$authenticated = ( isset($_SESSION["authenticated"]) ? true : false );
$post_data = json_encode(array(authenticated => $authenticated));
echo $post_data;
?>

最佳答案

改变

return this._http.get('auth.php').subscribe(res => {

return this._http.get('auth.php').map(res => {

并称它为

this._authService.getAuthenication()
    .subscribe(value => this.authenticated = value);

关于javascript - TypeScript Angular 2 响应订阅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35524520/

相关文章:

angular - 如何在功能模块内使用@ngrx/router-store

angularjs - 带有ngModel的Angular 2组件不更新父模型

angular - 尝试在 Angular 项目中导入 date-fns 时,Jest 测试失败

javascript - 使用钩子(Hook)检测 React 组件外部的点击

typescript - 为什么可以将类型为 'any' 的值传递给类型参数而不会出错?

Angular 4 指令错误 : Can't resolve all parameters for directive

Javascript禁用暂停按钮被点击/暂停音频

javascript - Angular 函数调用在 IE 浏览器中不起作用

php - html5多图片上传

javascript - 页面重新加载后相同的 Ajax 响应