Vue修饰符总结

在Vue.js中,修饰符是一种特殊的指令后缀,可以用于改变指令的行为或增加额外的功能。

1. prevent:

  • 使用场景:阻止默认事件行为。
  • 示例场景:阻止表单提交的默认行为。
  • 代码示例:
<template>
  <form @submit.prevent="submitForm">
    <input type="text" v-model="name">
    <button type="submit">提交</button>
  </form>
</template>

<script>
export default {
  data() {
    return {
      name: ''
    };
  },
  methods: {
    submitForm() {
      // 阻止表单提交的默认行为
      // 执行自定义表单提交逻辑
      console.log('提交表单:', this.name);
    }
  }
}
</script>

2. stop:

  • 使用场景:阻止事件冒泡。
  • 示例场景:阻止点击事件冒泡到父元素。
  • 代码示例:
<template>
  <div @click="outerClick">
    <!-- 父元素 -->
    <button @click.stop="innerClick">内部按钮</button>
  </div>
</template>

<script>
export default {
  methods: {
    outerClick() {
      console.log('父元素点击事件');
    },
    innerClick() {
      // 阻止点击事件冒泡到父元素
      console.log('内部按钮点击事件');
    }
  }
}
</script>

3. capture:

  • 使用场景:在事件捕获阶段处理事件。
  • 示例场景:在捕获阶段触发事件处理程序。
  • 代码示例:
<template>
  <div @click.capture="captureClick">
    <!-- 元素内容 -->
  </div>
</template>

<script>
export default {
  methods: {
    captureClick() {
      // 在捕获阶段触发事件处理程序
      console.log('捕获阶段点击事件');
    }
  }
}
</script>

4. self:

  • 使用场景:只有在元素自身上触发时调用事件处理程序。
  • 示例场景:只在元素本身点击时触发事件处理程序。
  • 代码示例:
<template>
  <div @click.self="selfClick">
    <!-- 元素内容 -->
  </div>
</template>

<script>
export default {
  methods: {
    selfClick() {
      // 只在元素本身点击时触发事件处理程序
      console.log('元素本身点击事件');
    }
  }
}
</script>

5. once:

  • 使用场景:只触发一次事件处理程序。
  • 示例场景:点击按钮后只执行一次事件处理程序。
  • 代码示例:
<template>
  <button @click.once="handleClick">点击一次</button>
</template>

<script>
export default {
  methods: {
    handleClick() {
      // 只触发一次事件处理程序
      console.log('按钮点击事件');
    }
  }
}
</script>

6. passive:

  • 使用场景:提高滚动的流畅性。
  • 示例场景:在滚动事件上使用.passive修饰符。
  • 代码示例:
<template>
  <div @scroll.passive="handleScroll">滚动内容</div>
</template>

<script>
export default {
  methods: {
    handleScroll() {
      // 在滚动事件上使用`.passive`修饰符
      console.log('滚动事件');
    }
  }
}
</script>

7. native:

  • 使用场景:监听组件根元素的原生事件。
  • 示例场景:监听组件根元素的点击事件。
  • 代码示例:
<template>
  <my-component @click.native="handleClick">
    <!-- 组件内容 -->
  </my-component>
</template>

<script>
export default {
  methods: {
    handleClick() {
      // 在组件的根元素上监听原生的点击事件
      console.log('组件根元素被点击');
    }
  }
}
</script>

相关推荐

  1. Vue修饰符总结

    2024-03-25 03:10:02       20 阅读
  2. Vue 修饰符有哪些

    2024-03-25 03:10:02       42 阅读
  3. Vue 中的修饰符

    2024-03-25 03:10:02       17 阅读
  4. Vue 常用修饰符

    2024-03-25 03:10:02       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-25 03:10:02       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-25 03:10:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-25 03:10:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-25 03:10:02       20 阅读

热门阅读

  1. AcWing 3417.砝码称重

    2024-03-25 03:10:02       20 阅读
  2. qinakun实现公共依赖的加载

    2024-03-25 03:10:02       26 阅读
  3. Git tag总结

    2024-03-25 03:10:02       17 阅读
  4. vscode集成git管理项目

    2024-03-25 03:10:02       20 阅读
  5. PiflowX-Faker组件

    2024-03-25 03:10:02       23 阅读
  6. bind更改this指向问题

    2024-03-25 03:10:02       17 阅读
  7. 三维重建-单目相机标定

    2024-03-25 03:10:02       19 阅读
  8. c语言如何颠倒字符串顺序

    2024-03-25 03:10:02       19 阅读
  9. 网络安全工程师学习路线汇总

    2024-03-25 03:10:02       21 阅读
  10. 安卓面试题多线程 131-135

    2024-03-25 03:10:02       18 阅读