Bootstrap

element ui tabs before-leave的使用

先看官方文档描述:切换标签之前的钩子,若返回 false 或者返回 Promise 且被 reject,则阻止切换。

贴一段我的代码

结构:

<el-tabs v-model="multyForm.activeType" style="width: 100%;" :before-leave="tabLeave">

方法:

        async tabLeave(){
            await this.$confirm('切换tab将不会保存当前修改内容, 是否继续?', '提示', {
                confirmButtonText: '确定',
                cancelButtonText: '取消',
                type: 'warning'
            }).then(() => {
                return true
            }).catch(() => {
                return reject()
            });
        },

需要注意的点:

1、必须使用async await不然不会生效

2、官方文档说return false 或者 reject()都会阻止切换,但是实际return false没有阻止切换

;