第一次使用KO,为听起来像是一个愚蠢的问题道歉。
我有一个充满数据的数组。一个值是' stars',这是一个数字。在我的HTML中,我想基于该值创建HTML元素。例如,如果值为4,我想要4个元素。如果值为5,我想要5个元素,依此类推。我正确地绑定了其余的数据,这是我不确定的部分。
我希望重复的元素是'fas fa-star`
数据
scores: [
{
title: 'Score One',
stars: 5,
},
}
HTML
<ul class="scores" data-bind="foreach: scores">
<li>
<div class="title" data-bind="text: title"></div>
<div class="stars">
<i class="fas fa-star"></i>
</div>
</li>
</ul>
答案 0 :(得分:1)
如果您尝试将类的值设置为星号值(例如<div class="5">
),则以下内容应该有效:
<ul class="scores" data-bind="foreach: scores">
<li>
<div class="title" data-bind="text: title"></div>
<div data-bind="attr: { class: stars }">
<i class="fas fa-star"></i>
</div>
</li>
</ul>
修改强> 在重新阅读您的问题后,这将是您正在寻找的内容:
<ul class="scores" data-bind="foreach: scores">
<li>
<div class="title" data-bind="text: title"></div>
<div data-bind="foreach: new Array(stars)"> // <-- replaced scores with stars
<i class="fas fa-star"></i>
</div>
</li>
</ul>