我正在尝试使用angular2 2.0.0-beta.0进行实验。
我有一个表格,行内容是通过angular2以如下方式生成的:
<table>
<tr *ngFor="#line of data">
.... content ....
</tr>
</table>
现在这段代码可以工作,我想将其封装成一个组件 "table-line"。
<table>
<table-line *ngFor="#line of data" [data]="line">
</table-line>
</table>
并且在组件中,模板包含<tr><td>内容。
但是现在表格不再起作用了。这意味着内容不再以列的形式显示。 在浏览器中,检查器向我展示DOM元素如下:
<table>
<table-line ...>
<tbody>
<tr> ....
我该如何让这个工作起来?
tr
标记,则会使用它,否则将使用默认浏览器行为。您还可以向组件选择器添加属性或类,例如<tr line-item>
与组件选择器"tr[line-item]"
或<tr class="line-item">
与组件选择器tr.line-item
。这样,您就可以完全掌控。我还没有在Angular2中尝试过这些内容,但我相信这是有效的。 - Günter Zöchbauertslint
的默认设置指向了样式指南,该指南建议不要采用这种方法。我不喜欢关闭推荐的代码检查规则,但据我所知,这似乎是一个相当武断的样式规则,在某些情况下是无法避免的(例如 OP 的问题)。 - Rob<li>
等有效的情况,我不认为有任何理由不使用它。 - Günter Zöchbauer