【发布时间】:2014-11-06 21:59:59
【问题描述】:
我是 Angular 和 ui-router 的初学者。我正在尝试根据当前状态名称为标题中的选项卡应用一个活动类。
<ul class="tabs">
<li id="tab1" ng-class="navTabClass(this.id)">
<a href="link1.html">Home
</a>
</li>
<li id="tab2" ng-class="navTabClass(this.id)">
<a href="link2.html">Sales
</a>
</li>
</ul>
我在控制器中定义了一个函数,用于通过检查选项卡 ID 和当前状态名称来确定类(在删除我的父视图的名称之后)
`$scope.navTabClass = function(tabId) {
console.log(tabId);
var stateName = $state.current.name;
mainTab = stateName.split('.');
return (mainTab[1] === tabId) ? 'active' : 'passive';
}
我打印出收到的 tabId,它总是“未定义”。不用说,函数总是返回被动作为类名
如何将 id 值正确传递给受控函数?
【问题讨论】:
-
你能设置一个 jsFiddle 或 plunker 来复制这个问题吗?
-
您是否尝试通过 URL 中的 UI.Router 参数访问 ID?
标签: javascript angularjs angular-ui-router ng-class