请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于 dropdownItem 点击跳转后自动收起 dropdown

老师你好,想问一下关于您代码中实现跳转后自动收起 dropdown 的相关问题:

使用 mitt 创建 emitter 后,让子组件去触发'dropdown-item-clicked'事件,同时传回{ e, props },此时看到您'dropdown-item-clicked'自定义事件的 callback 是

    const dropDownItemClicked = (e: any) => {
      if (e.props.closeAfterClick) {
        isOpen.value = false
      }
      context.emit('item-clicked', e)
    }

没有看懂这里为什么需要子组件将 { e, props } 传回来,以及不知道 item-clickGlobalHeader 中的 closeAfterClick 是做什么的。

为什么不能在 dropDownItemClicked 函数中直接 调用toggleOpen() 将组件隐藏呢?

正在回答

1回答

同学你好

这里只是想通过属性更精细化的调配是否关闭,因为有的 Item 点击有可能不想关闭整个菜单,所以可以通过这个 props.closeAfterClick 可以实现这个对应的功能。

传回来 e,props 只是个人习惯,这样可以为未来提供更加扩展的功能提供事件和参数。比如用户想知道点击的是哪个 item,这样有了 e 这个事件对象就更方便一些。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信