stopPropagation() 事件方法

stopPropagation() 方法防止调用相同事件的传播。

传播意味着向上冒泡到父元素或向下捕获到子元素。

 

复制代码
<template>
  <div>
    <div v-show="statusPanelShow" :style="statusSelectStyle" ref="statusPanel" class="status_panel">
        <p v-for="item, index in statusList"
          :key="item"
          :class="activeStatusIndex === index+1 ? 'status_active': ''"
          @click="changeCaseStatus(index+1)">{{ item }}</p>
      </div>
  </div>
</template>
<script>
export default {
    //父组件中通过provide来提供变量,然后在子组件中通过inject来注入变量
      provide() {
        return {
          main: this
        }
      },
  mounted() {
    this.$refs.statusPanel.addEventListener('wheel', (e) => {
        e.stopPropagation()
      });
      this.$refs.statusPanel.addEventListener('mousedown', (e) => {
        e.stopPropagation()
      });
      this.$refs.statusPanel.addEventListener('mousewheel', (e) => {
        e.stopPropagation()
      });

  },

  
   methods: {
      changeCaseStatus(index) {
          this.activeStatusIndex = index
          window.minder.execCommand('status', index)
          this.statusPanelShow = false
        },
  }
}
</script>
复制代码

 

 

复制代码
<template lang="html">
  <div class="mind-editor"></div>
</template>

<script>
export default {
    inject: ['main'],
    mounted() {
        window.minder = window.km = editor.minder;
        // 显示用例状态选项
        window.minder.on('showStatusMenu', this.showStatusPanel);
        document.addEventListener('wheel', this.main.hideStatusPanel);
        document.addEventListener('mousedown', this.main.hideStatusPanel);
        document.addEventListener('mousewheel', this.main.hideStatusPanel);
        this.$once('hook:beforeDestroy', () => {
            document.addEventListener('wheel', this.main.hideStatusPanel);
            document.addEventListener('mousedown', this.main.hideStatusPanel);
            document.addEventListener('mousewheel', this.main.hideStatusPanel);
      });

    },
}
</script>                    
复制代码

 

 

 

 
posted @   caichunyi  阅读(255)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示