我们可以在渲染时取消选择所有<md-tab>吗?

时间:2016-01-31 16:46:58

标签: angularjs angular-material

我已经使用角度材料实现了标签,其中我有 md-tabs ,其中有单独的 md-tab 指令。

我在 md-tabs 中有2个 md-tab 指令,如下所示:

<md-tab label="Home">                          
    <div class="demo-tab tab{{$index%4}}" id="scrollable-tabs">
        <p>Display all the recommnedations</p>
    </div>
</md-tab>
<md-tab ng-repeat="cat in categories" 
  ng-disabled="cat.disabled"
  label="{{cat.title}}"
  md-on-select="fetchCategoryProducts(cat.id)">
    <div class="demo-tab tab{{$index%4}}" id="scrollable-tabs">
        <p>Display tab specific content</p>
    </div>
</md-tab>

可以看出,第一个 md-tab 是静态的。下一个 md-tab 通过控制器在类别数组上使用ng-repeat生成更多选项卡。

问题是,ng-repeat生成的第一个选项卡会自动选中。我从 fetchCategoryProducts(cat.id)中了解到这一点,在我选择该标签之前会自动调用它。我打算只在单击选项卡时调用此函数。

虽然,当呈现 md-tabs 时, Home 选项卡被视为活动状态。当我查看页面时,一切似乎都很好。不知何故,在内部选择ng-repeat生成的第一个标签。

那么,如何停用ng-repeat生成的第一个标签?实际上,只有静态选项卡(即Home)应该在开始时处于活动状态,并且当生成时其余选项卡都应该被取消选择。

1 个答案:

答案 0 :(得分:0)

尝试将md-active添加到&#34; Home&#34;选项卡以激活“主页”选项卡。

<md-tab label="Home" md-active="true">