无法读取未定义无限滚动的 属性 'result'
Cannot read property 'result' of undefined infinite scroll
我的无限卷轴出现了一些奇怪的行为。我不断收到 TypeError: Cannot read 属性 'result' of undefined.
我的数据已检索,但不断获取更多数据,导致我的 table 中出现空行 html,我不确定发生了什么。
在下面的代码中我试过了 result.data |数据然后 vm.items[i]
谢谢
代码如下:
vm.items = [];
vm.busy = false;
vm.loadMore = function () {
if (vm.busy) return;
vm.busy = true;
productDataService.getProductList()
.then(function (result) {
console.log(result.data);
vm.items = result.data;
for (var i = 0; i < vm.items.length; i++) {
vm.items.push(vm.items[i].result);
vm.busy = true;
}
});
vm.items = [];
vm.busy = false;
vm.loadMore = function () {
if (vm.busy) return;
vm.busy = true;
productDataService.getProductList()
.then(function (result) {
console.log(result.data);
for (var i = 0; i < result.data.length; i++) {
vm.items.push(result.data[i].result);
}
vm.busy = false;
});
我会怀疑这个块:
for (var i = 0; i < vm.items.length; i++) {
vm.items.push(vm.items[i].result);
vm.busy = true;
}
每次 for 循环迭代时,您都会向 vm.items
添加一个元素,使 vm.items.length
= vm.items.length + 1
,您将其用作 for 循环中的条件:i < vm.items.length
。这个循环正在追逐自己的尾巴,即你有一个无限循环。
删除行 vm.items = result.data; 并迭代 result.data
我的无限卷轴出现了一些奇怪的行为。我不断收到 TypeError: Cannot read 属性 'result' of undefined.
我的数据已检索,但不断获取更多数据,导致我的 table 中出现空行 html,我不确定发生了什么。
在下面的代码中我试过了 result.data |数据然后 vm.items[i]
谢谢
代码如下:
vm.items = [];
vm.busy = false;
vm.loadMore = function () {
if (vm.busy) return;
vm.busy = true;
productDataService.getProductList()
.then(function (result) {
console.log(result.data);
vm.items = result.data;
for (var i = 0; i < vm.items.length; i++) {
vm.items.push(vm.items[i].result);
vm.busy = true;
}
});
vm.items = [];
vm.busy = false;
vm.loadMore = function () {
if (vm.busy) return;
vm.busy = true;
productDataService.getProductList()
.then(function (result) {
console.log(result.data);
for (var i = 0; i < result.data.length; i++) {
vm.items.push(result.data[i].result);
}
vm.busy = false;
});
我会怀疑这个块:
for (var i = 0; i < vm.items.length; i++) {
vm.items.push(vm.items[i].result);
vm.busy = true;
}
每次 for 循环迭代时,您都会向 vm.items
添加一个元素,使 vm.items.length
= vm.items.length + 1
,您将其用作 for 循环中的条件:i < vm.items.length
。这个循环正在追逐自己的尾巴,即你有一个无限循环。
删除行 vm.items = result.data; 并迭代 result.data