ng-click在ng-switch内部无效

时间:2015-03-27 19:59:10

标签: angularjs filter

我是AngularJs的初学者,我有很多问题:/

以下是其中一个:

我有用于过滤数据的链接。因此,当我点击第一个链接时,过滤器myFilter的值为1,等等。

只是为了告诉你我的过滤器工作,我推了两次链接(见http://plnkr.co/edit/2G6mahkmyIixMJ1mEVKp?p=preview

在上面的链接中,我使用ng-swich,因为我想,当我点击链接时,删除链接并只保留文本

在底部链接中,没有ng-swich,因此myFilter完美无缺

是否可以让ng-click内的ng-swich工作?

1 个答案:

答案 0 :(得分:1)

您处理问题的方式涉及太多的代码重复。

直接在html中替换对象也是一种不好的做法。如果你使用绑定到范围的函数它更干净,你就不会遇到子范围问题

您可以在每个<ul>中使用ng-if,而只使用一个<li>,而不是创建四个<ul>。这也是创建一个非常简单的指令

的好例子

HTML

<li>
     <span ng-if="myFilter.trimestre==1">Avril - juin</span>
     <a ng-if="myFilter.trimestre!=1" ng-click="updateFilter('trimestre',1)" href="#">Avril - juin</a>
</li>

JS

$scope.myFilter={};
$scope.updateFilter = function(key, val){
    $scope.myFilter[key]=val;
}

DEMO