ng-click 在 ng-switch 中不起作用

ng-click not working inside ng-switch

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

这是其中之一:

我有 link 用于过滤数据。所以当我点击 link 一个时,过滤器的值 myFilter 是一个,等等

为了向您展示我的过滤器有效,我将 links 放了两次(请参阅此处 http://plnkr.co/edit/2G6mahkmyIixMJ1mEVKp?p=preview

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

在底部的link中,没有ng-swich,所以myFilter完美

是否可以使 ng-swich 中的 ng-click 起作用?

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

直接替换 html 中的对象也是一种不好的做法。如果您使用绑定到范围的函数,它会更干净,并且您不会 运行 进入子范围问题

与其创建四个 <ul>,不如在每个 <li> 中使用 ng-if,并且只使用一个 <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