输入for循环后,它永远不会停止:
remove: function remove(e) {
var objectToRemoveId = e.currentTarget.getAttribute('objectId').toString();
var filteredList = this.myDto.objectList;
for (var index = 0; index < this.myDto.objectList.length; index++) {
var currentObject = this.myDto.objectList[index];
if (currentObject.Id !== objectToRemoveId) {
filteredList[filteredList.length + 1] = timeSheet;
}
}
}
Run Code Online (Sandbox Code Playgroud)
假设this.myDto.ObjectList是一个包含一个元素的数组.我确定问题只是盯着我看,但我无法弄清楚.
你在循环中添加了相同的列表,所以每次循环时,你this.myDto.objectList.length都会上升一个.看起来你想要一个空数组:
var filteredList = this.myDto.objectList;
Run Code Online (Sandbox Code Playgroud)
像这样:
var filteredList = [];
Run Code Online (Sandbox Code Playgroud)
或副本,如下:
var filteredList = this.myDto.objectList.slice();
Run Code Online (Sandbox Code Playgroud)
我不确定最终结果应该是什么,添加到名为filtered的列表会让我失望,但在任何一种情况下,你可能都是在上面的一个解决方案之后.
| 归档时间: |
|
| 查看次数: |
205 次 |
| 最近记录: |