【发布时间】:2017-05-29 02:52:40
【问题描述】:
我对 Promises 还很陌生,并认为我已经掌握了它们,但是这个问题让我陷入了困境。我的代码:
return axios.post('./getParks.php')
.then((daysGames)=> {
console.log(daysGames.data);
let dailyData = daysGames.data;
Object.keys(dailyData).map((day)=> {
运行控制台时会记录以下内容:
Object {1: Object, 2: Object..}
TypeError: Cannot read property 'data' of undefined
我也尝试了以下导致相同的错误:
let dailyParks = axios.post('./getParks.php');
return dailyParks
.then((daysGames)=> {
console.log(daysGames.data);
let dailyData = daysGames.data;
Object.keys(dailyData).map((day)=> {
【问题讨论】:
-
你在到达 daysGames.data 之前尝试过 JSON.parse(daysGames) 吗?
-
@muratgozel getParks.php返回的值已经是一个对象
-
如果你把这行
console.log(daysGames.data);改成console.log(Object.keys(daysGames));,你能在控制台中正确看到data属性吗? -
您可能对
getParks返回值有问题。你使用了return,但没有使用echo,对吧? -
@marmeladze 我使用了
echo,并且通过我在下面的答案中进行的更改,它再次正常运行。使用echo的做法不好?
标签: javascript php promise axios