Tabs add event @on-dblclick

This commit is contained in:
梁灏 2020-07-01 17:22:59 +08:00
parent 84060d0525
commit 3e80a192cb

View file

@ -15,7 +15,7 @@
<div ref="navScroll" :class="[prefixCls + '-nav-scroll']" @DOMMouseScroll="handleScroll" @mousewheel="handleScroll"> <div ref="navScroll" :class="[prefixCls + '-nav-scroll']" @DOMMouseScroll="handleScroll" @mousewheel="handleScroll">
<div ref="nav" :class="[prefixCls + '-nav']" :style="navStyle"> <div ref="nav" :class="[prefixCls + '-nav']" :style="navStyle">
<div :class="barClasses" :style="barStyle"></div> <div :class="barClasses" :style="barStyle"></div>
<div :class="tabCls(item)" v-for="(item, index) in navList" @click="handleChange(index)"> <div :class="tabCls(item)" v-for="(item, index) in navList" @click="handleChange(index)" @dblclick="handleDblclick(index)">
<Icon v-if="item.icon !== ''" :type="item.icon"></Icon> <Icon v-if="item.icon !== ''" :type="item.icon"></Icon>
<Render v-if="item.labelType === 'function'" :render="item.label"></Render> <Render v-if="item.labelType === 'function'" :render="item.label"></Render>
<template v-else>{{ item.label }}</template> <template v-else>{{ item.label }}</template>
@ -297,6 +297,11 @@
this.$emit('input', nav.name); this.$emit('input', nav.name);
this.$emit('on-click', nav.name); this.$emit('on-click', nav.name);
}, },
handleDblclick (index) {
const nav = this.navList[index];
if (!nav || nav.disabled) return;
this.$emit('on-dblclick', nav.name);
},
handleTabKeyNavigation(e){ handleTabKeyNavigation(e){
if (e.keyCode !== 37 && e.keyCode !== 39) return; if (e.keyCode !== 37 && e.keyCode !== 39) return;
const direction = e.keyCode === 39 ? 1 : -1; const direction = e.keyCode === 39 ? 1 : -1;