vue + iview页面Modal中内嵌Tabs,每次打开的时候Modal时默认选中Tabs的第一项

45 篇文章 1 订阅
21 篇文章 0 订阅

文档中说激活面板的name用value,页面第一次加载的时候可以,放在modal里就不好使了,每次打开的时候,当前激活的tab总显示上一次离开时的界面。

真正能用的是 this.$refs.tabs.activeKey = 'name1' ,此方法也可以动态设置Tabs页面。

下面看一下代码:

<Modal
          title="监控信息"
          width="1260"
          v-model="isShowCdElement"
          class-name="vertical-center-modal" :scrollable="true" :closable="false" mask="true" :mask-closable="false">
          <div class="card-tabs-element" ref="element" style="overflow-y: auto;">
            <Tabs ref="tabs" type="card" @on-click="handleTabClick">
              <TabPane :ref="'tab-'+item.id" :label="'组号'+item.id" :name="'tab'+item.id" context-menu v-for="(item,index) in tabsNum" :disabled ="item.status">
                <Table :columns="elementColumns" :data="elementList" :loading="elementLoading"></Table>
                <Page
                  :total="elementTotal"
                  :page-size="elementPageSize"
                  :current="elementPageNum"
                  show-elevator show-sizer show-total
                  @on-change="getElements"
                  @on-page-size-change="handleElementChangeSize"></Page>
              </TabPane>
              <template slot="contextMenu">
              </template>
            </Tabs>
          </div>

          <div slot="footer">
            <Button type="primary" @click="modalCdElementSubmit" :disabled="elementSubmitShow">确认</Button>
            <Button type="primary" @click="modalCdElementCancel" :disabled="elementCancelShow">取消</Button>
          </div>
        </Modal>

我这个里面放的是动态tab,tab个数是不固定的,那么每次请求的时候,需要初始化一下原来的值:

在data里面定义默认初始值,1个tab 

tabsNum: [{id:1,status:false}],

打开弹框的时候,当前激活的tab设置成第一个:

 //每次打开的时候,设置激活的tab是第一个
 this.$refs.tabs.activeKey = 'tab1'

每次在关闭弹框的时候,把这个tabNum设置成初始值。

这样每次弹框打开的时候,当前激活的tab就是默认的第一个了,而不是一次离开时的界面

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值