在我的Aurelia项目中,我在顶部有一个隐藏的表(我的标题是克隆),当原始的一个滚动到视图之外时,我想使用它来显示它的标题(固定位置)。我遇到的问题是克隆标题的click.delegate没有调用我的打字稿中的方法。
view.html
<table id="fixed-header"></table>
<table scrollable-header id="tableWithScrollableHeader" if.bind="something">
<thead>
<tr>
<th width="55%">
</th>
<th repeat.for="item of listOfItems">
${item.name}
<div>
<label click.delegate="doSomething(item.id)">
<span>${item.date}</span>
<i class="glyphicon glyphicon-pencil"></i>
</label>
</div>
</th>
</tr>
</thead>
<tbody repeat.for="itemOfBody of listOfItemsForBody">
// irreleveant code that displays the table's body
</tbody>
</table>
scrollable-header
是我创建的自定义属性,用于克隆表格的标题并使用
var $tableHeader = $("#tableWithScrollableHeader > thead");
var $clonedHeader = $tableHeader.clone(true, true);
var $fixedHeaderTable = $("#fixed-header").append($clonedHeader);
然后在滚动时,它确定是显示原始表格的标题还是固定定位的标题。 (类似于this回答)
当原始视图不在视图范围内但单击标签时,它会正确显示固定标题。
我也尝试用click.delegate
替换click.trigger
,但没有任何区别。
答案 0 :(得分:0)
查看这篇文章的答案:Aurelia dynamic binding听起来你需要动态绑定。示例gist,在附加click.delegate触发警报后创建一个按钮
从上面的帖子链接到要点:https://gist.run/?id=1960218b52ba628f73774822aef55ad7