我正在尝试使用 JavaScript 来完成我使用 jQuery 完成的 API 响应错误处理。
我在 jQuery 中编写了这段代码来完成我想要的(不同的项目):
var response = e.responseJSON;
$.each(response.errors, function(index, value){
var div = $("#error_" + index);
div.html(value[0]).addClass('error');
});
然后我尝试将代码转换为 JavaScript 而不是 jQuery,但我似乎遇到了对象问题,例如将数组转换为数组。对于 e.forEach
循环。
我目前的代码是这样的:
.catch(function(response){
let e = Object.values(response.response.data)
let data = Array.from(e[1])
console.log(e)
console.log(data)
});
当我记录 data
时,它返回一个空数组。记录时 e
返回类似数组的对象。
我想我正在寻找的是,我做错了什么,是否有更好的方法来实现我想要实现的目标?
最佳答案
e[1]
是一个非数组对象,所以 Array.from(e[1])
没有意义。我想你想要的是:
let e = Object.values(response.response.data);
for (var index in e[1]) {
var div = document.getElementById('error_' + index);
div.innerHTML = e[1][index][0];
div.classList.add("error");
}
关于javascript - 类数组对象转换为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46308452/