我想使用 Angular UI 创建以下选项卡:
(来源:gyazo.com)
所以,我添加了基于 Bootstap 的类名/标记的样式:
.nav-tabs > li.new > a {
padding-top: 5px;
}
.nav-tabs > .new > a:after {
content: "NEW";
color: indianred;
font-size: 10px;
vertical-align: super;
padding-left: 2px;
}
(如您所见,<a>
在添加超脚本文本后,我需要稍微补偿填充,否则它会被向下推。)
接下来,我在文件中有以下标记和代码html/js
:
HTML:
<tabset>
<tab ng-repeat="tab in tabs" heading="{{ tab.title }}" active="tab.active" ><!-- ng-class="{new: tab.new}"-->
<div ng-include="tab.page"></div>
</tab>
</tabset>
JS:
var TabsDemoCtrl = function ($scope) {
$scope.tabs = [
{ title:"Tab 1", content:"Dynamic content 1" },
{ title:"Tab 2", content:"Dynamic content 2", active: true, 'new': true }
];
};
所以,剩下的就是让 Angular根据上面的数组定义添加一个以"new"
正确元素命名的类。tabs
不幸的是,我无法弄清楚如何。
如您所见,我尝试过ng-class="{new: tab.new}"
(在 html 代码中注释),但这基本上破坏了所有类功能,ng-class
在开发工具中查看它时会产生不正确的属性:
ng-class="{new: tab.new} {active: active, disabled: disabled}"
这是Plunkr。