ElemeFE / ElemeFE/element

[Bug Report] el-tabs的before-leave钩子会触发两次

Open
#21,742 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Vue
Stars
54k
Forks
14.4k
PR merge metrics
No merged PRs in 30d

Description

### Element UI version
2.15.7

### OS/Browsers version
Mac Chrome

### Vue version
2.6.14

### Reproduction Link
https://codepen.io/ziyoung/pen/LKNBqB

### Steps to reproduce
不知道是不是我操作错误或理解有误
tabs组件的before-leave钩子
在返回$confirm这样的Promise时,点击时会触发一次钩子,Promise被resolve时也会触发一次
两次的activeName和oldActiveName是一样的
导致出现两次弹窗,目前解决办法是再找一个变量控制是否弹出confirm

另:before-leave钩子中$confirm被取消时仍不会拦截
解决办法详见 https://github.com/ElemeFE/element/issues/21719

### What is Expected?
如果是组件特性则忽略
如果组件有误则修复触发时机

### What is actually happening?
在返回$confirm这样的Promise时,点击时会触发一次钩子,Promise被resolve时也会触发一次

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.