我有一个html表,希望得到所有的行。但是,在.children或DebugElement上调用NativeElement会返回不同的顺序。
我的桌子:
<tbody>
<tr>
<td>1</td>
</tr>
<tr>
<td>2</td>
</tr>
<tr>
<td>3</td>
</tr>
</tbody>调用第一个日志中的.children和第二个日志中的NativeElement (将两者转换为数组):
const table: DebugElement = fixture.debugElement.query(By.css('table'));
console.log(table.query(By.css('tbody')).children.map(e => e.nativeElement));
console.log(Array.from(table.query(By.css('tbody')).nativeElement.children));第一个记录了以下列表:
[
<tr>
<td>2</td>
</tr>,
<tr>
<td>1</td>
</tr>,
<tr>
<td>3</td>
</tr>
]而第二个则记录如下:
[
<tr>
<td>1</td>
</tr>,
<tr>
<td>2</td>
</tr>,
<tr>
<td>3</td>
</tr>
]为什么第一个日志中的顺序被交换了?API行为有区别吗?
发布于 2016-11-25 19:59:50
这似乎是https://github.com/angular/angular/issues/13066中最近出现的一个bug。
https://stackoverflow.com/questions/40811275
复制相似问题