Vue监听子组件事件

本文介绍了在Vue中如何使用$emit方法监听子组件事件,通过示例展示了如何触发和处理自定义事件,包括传递参数和在组件上使用自定义事件进行双向绑定。详细解析了v-model在子组件上的实现原理,并给出实际操作中的注意事项。
摘要由CSDN通过智能技术生成

首先看下面的示例代码:
注意:

在vue中,对于绑定的style属性,样式内容不能用-的写法,比如font-size,是无效的,而应该写成驼峰的形式fontSize.

<div id="app">
    <div :style="{
      fontSize: postFontSize + 'em'}">
        <blog-post v-for="post in posts" :key="post.id" :post="post"></blog-post>
    </div>
</div>
Vue.component("blog-post", {
   
    props: ['post'],
    template: `
        <div class="blog-post">
            <h3>{
    { post.title }}</h3>
            <button>
                Enlarge Text
            </button>
            <div v-html="post.content"></div>
        </div>
    `
});
let vm = new Vue({
   
    el: "#app",
    data: {
   
        posts: [
            {
    id: 1, title: 'My journey with Vue' },
            {
    id: 2, title: 'Blogging with Vue' },
            {
    id: 3, title: 'Why Vue is so fun' }
        ],
        postFontSize: 1
    }
}
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue中,父组件可以通过监听组件事件来获取组件的状态或者触发一些操作。具体实现方法如下: 1.在组件中定义一个事件,并在需要触发该事件的地方使用`$emit`方法触发该事件,例如: ```javascript // 组件中定义事件 this.$emit('child-event', 'hello from child component') ``` 2.在父组件中使用`v-on`指令监听组件事件,并在回调函数中处理事件,例如: ```html <!-- 父组件监听组件事件 --> <child-component v-on:child-event="handleChildEvent"></child-component> ``` ```javascript // 父组件中处理组件事件 methods: { handleChildEvent(data) { console.log(data) // 输出:'hello from child component' } } ``` 另外,在Vue 2中,还可以使用`@hook`事件监听组件的生命周期事件,例如: ```html <!-- 父组件监听组件生命周期事件 --> <child-component v-on:hook:mounted="handleMounted"></child-component> ``` ```javascript // 父组件中处理组件生命周期事件 methods: { handleMounted() { console.log('child component mounted') } } ``` 在Vue 3中,可以使用类似上面的`@hook`事件监听组件的生命周期事件,例如: ```html <!-- 父组件监听组件生命周期事件 --> <child-component v-on:hook:mounted="handleMounted"></child-component> ``` ```javascript // 父组件中处理组件生命周期事件 methods: { handleMounted() { console.log('child component mounted') } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值