首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel 9:从子组件到父组件的问题释放事件

Laravel 9:从子组件到父组件的问题释放事件
EN

Stack Overflow用户
提问于 2022-04-07 22:48:40
回答 1查看 160关注 0票数 0

在我的Laravel 9项目中,我有一个父组件,其模板包括一个子组件。

代码语言:javascript
运行
复制
template>
.... 
.... 
<div v-if=item.is_visible  class="col-4">
                <note-details-modal-component v-bind:is_visible=item.is_visible :note_id= item.id> 
                </note-details-modal-component> 

</div>

在单击父组件中的一个按钮时,我将is_visible设置为true,它通过v-if呈现子组件。在子组件中,当我按下按钮时,它会调用一个向父组件发出事件的方法。

代码语言:javascript
运行
复制
closeNow: function() {
              console.log('closeNow'); 
            //  this.$parent.$emit('close_note',false);  
              this.$emit('close_note',false); 
            } ,    

在父组件中,我有一个方法。

代码语言:javascript
运行
复制
close_note(value)
        {
           console.log('In parent');
           this.is_visible = ! this.is_visible; 
        },

当我单击子组件中的“关闭”按钮时,它在子组件中调用CloseNow(),并在console.log中看到这一点。但是,该事件不会向父事件发出。我已经尝试了我能在网上找到的所有建议。而且,我没有在Dev控制台中看到任何错误。

请有人告诉我,我的代码中有什么问题是防止事件从子组件发出到父组件的?

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-07 23:26:08

问题是没有提到你所做的发射。如果你有这个:

代码语言:javascript
运行
复制
closeNow: function() {
    console.log('closeNow'); 
    this.$emit('close_note',false); 
}

在调用子组件时,应该提到close_note。应该是这样的:

代码语言:javascript
运行
复制
<note-details-modal-component v-bind:is_visible=item.is_visible :note_id= item.id @theEmitName="theFunctionYoucall"> 
</note-details-modal-component>

其中theEmitName是close_note,您调用的函数具有相同的名称。这个介质是有用的:https://medium.com/js-dojo/component-communication-in-vue-js-ca8b591d7efa

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71789767

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档