我试图通过创建两个按钮来使排序功能起作用:相关性和日期。
我通过以下方式进行设置:
<div ng-init="sort=false">
<a ng-click="sort=true">Date</a>
<a ng-click="sort=false">Relevance</a>
然后在容器上显示结果:
<div eui-sort="ejs.Sort('post_date').order('desc')" eui-enabled="sort" >
用
ng-init
设置的值会正确影响初始排序顺序,当我单击date
时,列表将按预期进行排序,但是当我单击relevance
时,列表不会重新排序,就好像eui-enabled
设置为false
一样。我猜想对Angular的了解不足会使我对此简化了。有什么建议吗?
最佳答案
我怀疑您正在碰到AngularJS dot-problem,即:sort。规避此问题的一种方法是在eui-sort范围内修改sorting.sort:
<div eui-sort="ejs.Sort('post_date').order('desc')" eui-enabled="true">
<a ng-click="sorting.enabled=true">Date</a>
<a ng-click="sorting.enabled=false">Relevance</a>
</div>
在此示例中,启用eui的功能仅用于初始化,因为值(true)不变。请注意,要引用“sorting:对象”,您必须位于eui-sort的范围内(即:位于div内)
关于angularjs - elasticui-使用ng-click触发排序仅在首次单击时触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24663850/