美文网首页
vue3组件绑定事件

vue3组件绑定事件

作者: 曾祥辉 | 来源:发表于2021-04-06 15:59 被阅读0次
vue3绑定属性新特性

默认所有属性都绑定到组件的根元素

//父组件
<template>
  <component size="mini" @click="onClick" @focus="onFocus"></component>
</template>
//子组件
<template>
  <button></button >
<template>
//相当于
<template>
  <button size="mini" @click="onClick" @focus="onFocus"></button >
<template>

如果不想绑定属性到根元素,可以配置inheritAttrs:false

//子组件
<template>
  <button></button>
</template>
<script lang="ts">
export default {
  inheritAttrs:false,// 默认绑定到根元素配置项
}
</script>

vue3新特性 :$attrs是一个对象,包含了该元素的所有绑定事件

//子组件
<template>
  <div>
    <button v-bind="$attrs"></button >
  </div>
<template>
// 相当于
<template>
  <div>
    <button size="mini" @click="onClick" @focus="onFocus"></button >
  </div>
<template>

另一种批量绑定属性的方法是用setup的context.attrs

//子组件
<template>
   <div size="mini">
    <button @click="onClick" @focus="onFocus"></button>
   </div>
</template>
<script lang="ts">
export default {
  setup(props,context) {
    const { onClick, size,onFocus } = context.attrs;
    return { size , onClick, onFocus };
  },
};

批量绑定属性可使用...剩余操作符

//子组件
<template>
   <div size="mini">
    <button v-bind="rest"></button>
   </div>
</template>
<script lang="ts">
export default {
  setup(props,context) {
    const { size , ...rest } = context.attrs;
    return { size, rest  };
  },
};

相关文章

  • vue3 v-model给子组件绑定属性

    vue3 v-model给子组件绑定属性

  • Vue3 属性绑定

    在写 Vue3 项目的过程中注意到当父组件给子组件传属性和事件时默认是将所有属性绑定到子组件的 根元素 上 如何根...

  • vue3组件绑定事件

    vue3绑定属性新特性 默认所有属性都绑定到组件的根元素 如果不想绑定属性到根元素,可以配置inheritAttr...

  • 前端VUE3,JQ,uniapp,综合

    vue3 + ts 子组件更新props 子组件可以直接修改父组件传进来的值子组件定义事件名称update:事件名...

  • vue组件学习2

    一.子组件向父组件传递数据 方法:子组件绑定子组件的自定义事件,但事件处理函数绑定父组件的方法 1.

  • 小程序防止多次点击

    1. 写两个一样的组件, 一个有事件绑定, 一个没有, 当点击有事件绑定的组件的时候,同时隐藏有事件绑定的组件,显...

  • vue父子组件通过props和emit实现通信

    emit 子组件:子组件通过$emit方法触发父组件中的parentAction事件绑定的方法 父组件父组件中绑定...

  • Vue.js第3课-深入理解Vue组件(part02)

    四、给组件绑定原生事件 如何给组件绑定原生事件? 我们首先编写一个全局的子组件 child,在父组件的模板里先试一...

  • (十二)给组件绑定原生事件

    本节知识点 给组件绑定原生事件 代码实现 因为自定义组件要想绑定事件必须监听子组件发射过来的事件。而要是用原生的就...

  • vue其他知识点简单记录

    路由: 过渡动画 组件 数据绑定 事件 方法:事件可以调用方法 子父组件传值 插槽 动态组件

网友评论

      本文标题:vue3组件绑定事件

      本文链接:https://www.haomeiwen.com/subject/cvnjkltx.html