gpt4 book ai didi

angular - 订阅方法返回未定义的 json 对象

转载 作者:太空狗 更新时间:2023-10-29 18:20:07 39 4
gpt4 key购买 nike

今天我在 Ionic 2 项目中遇到了一个非常有趣的错误。我有 Asp.net REST API。我从提供商那里调用 rest api 以获取机器。问题是它被映射为 JSON,当我打印它的 JSON 格式时,它显示了 Json 对象数组。但是,在我订阅它的映射之后,它显示未定义。

return this.http.get('http://localhost:19496/api/user(1982)/Machines',config).map(res=>console.log(res.json()));

显示为: enter image description here

没问题。但是当我订阅它时,它返回未定义的数据:

subscribe(data=>{
console.log(data)
})

我没有更改代码。上周它可以正常工作,但是当我放假回来时却没有工作。

最佳答案

根据我在问题中看到的内容,问题是您没有从 map 返回任何内容:

return this.http.get('...',config)
.map(res=>console.log(res.json()));

这就是为什么在您订阅时返回 undefined 的原因。尝试在控制台中打印后返回响应:

return this.http.get('...',config)
.map(res => res.json())
.map(res => {
console.log(res);
return res; // <- Here! :)
});

关于angular - 订阅方法返回未定义的 json 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44803695/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com