Javascript Nativescript游乐场vue.js显示错误消息;TypeError:undefined不是对象(正在评估&"x27;res.list.splice)";

Javascript Nativescript游乐场vue.js显示错误消息;TypeError:undefined不是对象(正在评估&"x27;res.list.splice)";,javascript,vue.js,Javascript,Vue.js,export const WEATHER\u URL=”https://api.openweathermap.org/data/2.5/"; 导出常数天气_APIKEY=“2b27b121d7923afe1e02876057a88c10”//从OpenWeatherMap 导出const CURRENT_WEATHER_PATH=“WEATHER/”; 导出const WEATHER_FORECAST_PATH=“FORECAST/daily/”; 导出常量天气图标={ 日期:{ 清除:0xf0

export const WEATHER\u URL=”https://api.openweathermap.org/data/2.5/";
导出常数天气_APIKEY=“2b27b121d7923afe1e02876057a88c10”//从OpenWeatherMap
导出const CURRENT_WEATHER_PATH=“WEATHER/”;
导出const WEATHER_FORECAST_PATH=“FORECAST/daily/”;
导出常量天气图标={
日期:{
清除:0xf00d,
云:0xf002,
毛毛雨:0xf009,
雨量:0xf008,
雷暴:0xf010,
雪:0xf00a,
雾:0xf0b6
},
晚上:{
清除:0xf02e,
云:0xf086,
毛毛雨:0xf029,
雨量:0xf028,
雷暴:0xf02d,
雪:0xf02a,
雾:0xf04a
},
中立的:{
温度:0xf055,
风力:0xf050,
云:0xf041,
压力:0xf079,
湿度:0xf07a,
雨量:0xf019,
日出:0xf051,
日落:0xf052
}
};
导出常数风向=[
“北方”,
“东北偏北”,
“东北”,
“东北偏东”,
“东方”,
“东南偏东”,
“东南”,
“东南偏南”,
“南方”,
“西南偏南”,
“西南”,
“西西南”,
“西部”,
“西北偏西”,
“西北”,
“西北偏北”

];除非更改API密钥,否则请求预测时的响应为:

{
“cod”:401,
“消息”:“无效的API密钥。请参阅”http://openweathermap.org/faq#error401 有关详细信息,请参阅。“
}
解决方案:您可能必须分别为每个端点启用API密钥,因为它在请求当前天气时确实有效

重要提示:通过发布的代码块/链接代码,您公开了API密钥。确保重置/重新生成它,并且当前API密钥不再工作


需要注意的重要一点是,在您的
请求者中,
不会检查响应是否正常

导出函数get(url){
回传(
网址
).然后(功能(响应){
返回response.json();
}).then(函数(json){
返回json;
});
}
fetch()
文档说明:

fetch()
返回的承诺不会在HTTP错误状态下拒绝,即使响应是HTTP
404
500
。相反,它将正常解析(将
ok
状态设置为
false
),并且它仅在网络故障或任何阻止请求完成的情况下才会拒绝

这意味着,像当前编写的请求者一样,您应该检查
数据.cod
以获得成功响应(
200
)。或者,您可以重写
请求者
,以抛出不正常响应

//如果响应正常,则返回已解析的JSON。当响应不正常时
//将响应作为错误对象拒绝。
导出函数get(url){
返回获取(url)。然后((响应)=>{
如果(!response.ok)抛出响应;
返回response.json();
});
}

就像错误所说的
res.list
未定义的
,因此对其调用
.splice()
将抛出所述错误。您能
console.log(res)
检查它是否符合您对数据的期望吗?我将链接粘贴到这里。你能帮我看一下吗?我如何分别为每个端点启用API密钥?