vue $attrs 和 $listeners

$attrs

用于接收父组件通过v-bind传递的所有参数

使用场景:

多用于需要将从父组件接收的多个参数都传递给子组件时

补充:

使用props接收后的参数将从$attrs中

$listeners

用于接收父组件通过v-on传递的所有监听事件

使用场景:

多用于需要将从父组件接收的多个监听事件都传递给子组件时

示例:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>test</title>
  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
  <div id="app">
    <cpn-a :obj="obj" :message="message" @input="handleInput" @blur="handleBlur"/>
  </div>
  <template id="cpnA">
    <div>
      <cpn-a-a v-bind="$attrs" v-on="$listeners" />
    </div>
  </template>
  <template id="cpnAA">
    <div>
      <input type="text" v-model="count" v-on="$listeners">
    </div>
  </template>
  <script>
    var app = new Vue({
      el: '#app',
      data: {
        message: 'Hello Vue!',
        obj: {
          name: 'attrs'
        }
      },
      components: {
        cpnA: {
          template: '#cpnA',
          props: ['obj'],
          components: {
            cpnAA: {
              template: '#cpnAA',
              data () {
                return {
                  count: ''
                }
              }
            }
          },
        }
      },
      methods: {
        handleInput(e) {
          console.log('handleInput',e.target.value)
        },
        handleBlur(e) {
          console.log('handleBlur',e.target.value)
        }
      }
    })
  </script>
</body>
</html>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.vuex是什么?怎么使用?哪种功能场景使用它? Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式...
    猴逃逃阅读 4,432评论 0 2
  • Java设计模式 目标 学习反射技术,掌握反射的基本概念 着重学习全书的重点——动态代理和责任链模式,以及拦截器概...
    哈哈啊_07e8阅读 1,859评论 0 0
  • ffmpeg相关文章网址(用于记录一些好的文章地址~)ffmpeg命令详解 https://blog.csdn.n...
    lancelot123阅读 4,808评论 0 0
  • 前端的段位 发现一件有趣的事,把学习路线比作游戏中的段位上分,在不同的分段都有自己的定位和要锻炼的事情: 11青铜...
    西米西咪阅读 1,139评论 0 0
  • 今天感恩节哎,感谢一直在我身边的亲朋好友。感恩相遇!感恩不离不弃。 中午开了第一次的党会,身份的转变要...
    余生动听阅读 13,597评论 0 11

友情链接更多精彩内容