vue组件间传参调用函数问题

我一个页面调用了一个tree组件,每个节点有相应的操作按钮,我想点击新增(add())或者编辑(edit())方法时传入一个值(这个值分辨在哪个节点下插入或者编辑哪个节点),再传入一个控制表单显示的Boolean值到页面,这个form组件也是调用的。相当于是兄弟组件间传值,我有点理不清逻辑,也不明白一些传参或者调用函数的语法。请教一下各路大 神!

img

跟着官网的教程学习了一下,vue父子组件间通信问题逻辑:
子组件传递参数给父组件:

//子组件调用父组件方法并且传递参数给父组件
add(data){
      this.$emit("notice",{data})
    }

父组件监听子组件的调用:

<MenuTree cardTitle="菜单管理"
                :data="treeData"
                :headerButton="true"
                :operateButton="true"
                style="margin-top:10px"
                ref="menuTree"
                @notice="showForm"></MenuTree>
<!-- 其中@notice与子组件对应 -->

父组件方法:

showForm(data){
      this.whetherShow = true;
      console.log(data)
    }

大致逻辑是:如果子组件的add方法被调用了,则子组件传递个data值给父组件的showForm方法并且调用。我这里add方法是子组件的一个按钮事件,当子组件按钮被点击后能看到页面控制台输出了data的值。