【发布时间】:2020-11-23 16:59:35
【问题描述】:
我是 Angular 的初学者,我正在使用 Angular 8 开发一个网站,我的一个页面中有这个:
const gridTableCells = document.querySelectorAll('.grid-table > div');
gridTableCells.forEach((cell) => {
const orderNum = cell.getAttribute('order');
(orderNum % 2 !== 0) && (cell.className = '--is-striped');
});
/* Grid Table */
.grid-table {
width: 100%;
border: 0px solid red;
margin: 2em 0;
display: grid;
grid-auto-flow: column;
grid-template-rows: repeat(7, auto);
grid-template-columns: repeat(3, 1fr);
}
.grid-table > div {
background-color: #fff;
border: 1px solid #f2f2f2;
padding: 1rem;
}
.grid-table > div.--is-striped {
background-color: #f2f2f2;
}
.grid-table div.thead {
background-color: #eee;
font-weight: bold;
text-transform: uppercase;
}
.grid-table div a {
margin-right: 1em;
}
<!-- Year-wise Grid Table -->
<div class="grid-table">
<div order="1" class="thead">Year</div>
<div order="2"><p>2020</p></div>
<div order="3"><p>2019</p></div>
<div order="4"><p>2018</p></div>
<div order="5"><p>2017</p></div>
<div order="6"><p>2016</p></div>
<div order="7"><p>2010</p></div>
<div order="1" class="thead">some text</div>
<div order="2"><p>some text</p></div>
<div order="3"><p>some text</p></div>
<div order="4"><p>some text</p></div>
<div order="5"><p>some text</p></div>
<div order="6"><p>some text</p></div>
<div order="7"><p>some text</p></div>
<div order="1" class="thead">Company</div>
<div order="2">
<a class="external" href="#">some text</a>, <a class="external" href="#">some text</a>, <a class="external" href="#">some text</a>
</div>
<div order="3"><a class="external" href="#">some text</a>, <a class="external" href="#">some text</a></div>
<div order="4"><a class="external" href="#">some text</a></div>
<div order="5"><a class="external" href="#">some text</a></div>
<div order="6"><a class="external" href="#">some text</a>, <a class="external" href="#">some text</a></div>
<div order="7"><a class="external" href="#">some text</a></div>
</div>
<!-- /Year-wise Grid Table -->
现在我的问题是,我不只是在生成数据表的 component.html 中是静态的,而是我想使用 *ngFor 循环它,而不是静态 HTML 代码,我不知道如何去做吧?有什么帮助吗?或任何我可以学习的参考网址?
【问题讨论】:
-
对于这个特定的要求,您确定要应用单独的 css 类,而不是像
div[order]:nth-child(even) { background-color: #f2f2f2 }那样使用 css 选择器来获得相同的效果,并一起避免额外的过程吗?order也不是有效属性,您应该使用data-order作为您的属性。
标签: javascript html angular angular8