我想要什么:从我的嵌套 foreach 访问自定义 afterRender。
我有的:
我正在构建一个可折叠的播客列表,每个播客都有多个类别。我目前拥有的是使用 foreach 生成的播客列表,其中的类别元素是使用另一个 foreach 生成的。
<div id="content-programs">
<!-- content -->
<div data-role="collapsible-set" data-bind="foreach: { data: entries }">
<div class="entry" data-role="collapsible" data-collapsed="false">
<h3 data-bind="text: title"></h3>
<b>Author:</b> <span data-bind="text: author"></span><p>
<b>Published:</b> <span data-bind="text: publishedDate"></span><p>
<p>
<span data-bind="text: contentSnippet"></span>
<a data-bind="attr: {href: link}" >Full Story</a>
</p>
<b>Categories:</b>
<div data-bind="foreach: categories">
<span data-bind="text: $data"></span>
</div>
</div>
</div>
</div>
我的要求实际上很简单,我只想用逗号分隔类别。我可以在数据或类似的东西上做到这一点,但我也在探索淘汰赛,并对它可以提供什么感兴趣。
这是我尝试过的:
feed = ko.mapping.fromJS(response.responseData.feed);
ko.applyBindings
(
{
entries: feed.entries,
arCategories:
function(categories, data)
{
alert(data);
}
}
);
HTML
<b>Categories:</b>
<div data-bind="foreach: {data: categories, afterRender: arCategories}">
<span data-bind="text: $data"></span>
</div>