Angularjs 角度:根据当前状态添加.活动类
我试图根据当前状态将Angularjs 角度:根据当前状态添加.活动类,angularjs,angular-ui-router,Angularjs,Angular Ui Router,我试图根据当前状态将.active类添加到导航选项卡中,但由于该状态具有:id,因此将该类active添加到多个选项卡中 我的州看起来是这样的: $stateProvider .state('genre', { url: "/movie/genre/:id", templateUrl: "views/movie/genre.html", }); 我在标记上使用ui-sref和ui-sref-active,如下所示: <li ui-sref="genre"
.active
类添加到导航选项卡中,但由于该状态具有:id
,因此将该类active
添加到多个选项卡中
我的州看起来是这样的:
$stateProvider
.state('genre', {
url: "/movie/genre/:id",
templateUrl: "views/movie/genre.html",
});
我在标记上使用ui-sref
和ui-sref-active
,如下所示:
<li ui-sref="genre" ui-sref-active="active">
<a href="#/movie/genre/horror">Horror</a>
</li>
<li ui-sref="genre" ui-sref-active="active">
<a href="#/movie/genre/romance">Horror</a>
</li>
...
...
因此,尽管我在site.com/movie/genre/horror
,但我在两个选项卡上都获得了.active
类,而不仅仅是恐怖页面
在此方面的任何帮助都将不胜感激
提前谢谢 您不必使用
href
,您必须使用ui路由器状态进行导航。在这种情况下,您必须在ui sref
中传递参数。然后扔掉它
ui-sref="genre({id:'horror'})"
该类将应用于您的活动状态。您的状态为“流派”,这对于您的ui sref属性都是活动的 我做了一个应该对你有用的东西
恐怖
浪漫
您可以摆脱li
上的ui sref
。只是需要放在锚上。啊,你说得对。我不希望该类应用于作为具有ui sref指令的元素的父元素的元素。我在答案和plunkr.Perfect@PaulPodlech中改变了这一点。这正是我想要的。也谢谢你,马特!
<li ui-sref-active="active">
<a ui-sref="genre({id: 'horror'})">Horror</a>
</li>
<li ui-sref-active="active">
<a ui-sref="genre({id: 'romance'})">romance</a>
</li>