function attrStr(k,v) {
    return angular.isDefined(v) ? ' ' + k + '="' + v + '"' : '';
  }
@ngdoc directive
@name ionTab
@module ionic
@restrict E
@parent ionic.directive:ionTabs

@description
Contains a tab's content.  The content only exists while the given tab is selected.

Each ionTab has its own view history.

@usage
```html
<ion-tab
  title="Tab!"
  icon="my-icon"
  href="#/tab/tab-link"
  on-select="onTabSelected()"
  on-deselect="onTabDeselected()">
</ion-tab>
```
For a complete, working tab bar example, see the {@link ionic.directive:ionTabs} documentation.

@param {string} title The title of the tab.
@param {string=} href The link that this tab will navigate to when tapped.
@param {string=} icon The icon of the tab. If given, this will become the default for icon-on and icon-off.
@param {string=} icon-on The icon of the tab while it is selected.
@param {string=} icon-off The icon of the tab while it is not selected.
@param {expression=} badge The badge to put on this tab (usually a number).
@param {expression=} badge-style The style of badge to put on this tab (eg tabs-positive).
@param {expression=} on-select Called when this tab is selected.
@param {expression=} on-deselect Called when this tab is deselected.
@param {expression=} ng-click By default, the tab will be selected on click. If ngClick is set, it will not.  You can explicitly switch tabs using {@link ionic.controller:ionicTabs#select ionicTabBar controller's select method}.