Vue3 父事件覆盖子事件,Vue2 的 v-on=“$listeners“ 的替代方案

在 Vue3 中,$listeners 被删除
Vue3 父事件覆盖子事件,Vue2 的 v-on=“$listeners“ 的替代方案_第1张图片

子组件代码,需要特别注意的是事件名为 on 开头,例如 onBack。不确定的可以通过给父组件传递 事件或属性,再打印子组件的 attrs = useAttrs(),来确定传值

// template
v-bind="newAttrs"
// template

import { computed, useAttrs } from 'vue'
const attrs = useAttrs()
const newAttrs = computed(() => {
  return Object.assign(
    {
      onBack: () => { // !! onBack 而不是 Back
        goBack()
      }
    },
    attrs
  )
})

你可能感兴趣的:(前端,javascript,前端,Vue3)