<el-tabs id="manage" class="top-line" v-model="tabInfo.currentCard" type="card" @tab-click="handleClick" style="height: 100%" v-if="!hasEleAuth('adminExamManage')" > <el-tab-pane name="issued"> <div slot="label" class="tabLabel">已發布 </div> <NewsSearch :value="value" :isNewsSearch="true" class="pd20" v-if="isFirst" // 加上v-if /> </el-tab-pane> <el-tab-pane name="unIssue"> <div slot="label" class="tabLabel">未發布 </div> <NewsSearch :value="value" :isNewsSearch="true" class="pd20" v-if="isSecond" // 加上v-if /> </el-tab-pane> </el-tabs>
相當於重新渲染了tab里的組件
private handleClick(tab) { sessionStorage.setItem('newsListTabName', tab.name); if (tab.name == 'issued') { this.value = '1'; this.isFirst = true; this.isSecond = false; } else if (tab.name == 'unIssue') { this.value = '2'; this.isFirst = false; this.isSecond = true; } }