无法从承诺获取值 - IONIC2



我的php文件返回此作为响应

"结果:1"

我正在尝试在我的.ts文件中匹配它,如下所示,这不起作用

this._login.login(this.usr,this.pwd)
        .subscribe(data => {
          console.log(data[0].Result);
             if(data[0].Result == 1){
                this.navCtrl.push(DashboardPage);
             }
        }

在我的console.log中,它说未定义。请帮助我更正这 2 行代码 console.log(data[0].Result); if(data[0].Result == 1)

提前致谢

看起来你的php代码返回一个字符串,而不是一个json(从技术上讲,它是转换为json的字符串),但在ionion中,你把它当作一个json对象。Te 响应应为:[{"Result": 1}]Result:1

所以在你的PHP代码中,你需要:

echo json_encode(array(array("Result" => $cnt)));

我认为你需要这样,

this._login.login(this.usr,this.pwd)
        .subscribe(data => {
          console.log(data.Result);
             if(data.Result == 1){
                this.navCtrl.push(DashboardPage);
             }
        }

从屏幕截图中,返回类型不是 JSON,而是字符串。 将字符串隐藏为 JSON。尝试以下代码

 this._login.login(this.usr,this.pwd)
            .subscribe(data => {
let updatedData = JSON.parse("{"+data+"}")
              console.log(updatedData.Result);
                 if(updatedData.Result == 1){
                    this.navCtrl.push(DashboardPage);
                 }
            }

相关内容

  • 没有找到相关文章

最新更新