primefaces / primevue

Next Generation Vue UI Component Library
https://primevue.org
MIT License
9.8k stars 1.18k forks source link

Menu: NuxtLink throws warning Extraneous non-emits event listeners #6283

Closed frasza closed 2 weeks ago

frasza commented 2 weeks ago

Describe the bug

I have been using popup Menu with NuxtLink routing items until recent update 4.0.5 started producing warnings whenever I use NuxtLink inside item template as provided in reproduction.

Warning: Extraneous non-emits event listeners (pointerenter, focus) were passed to component but could not be automatically inherited because component renders fragment or text root nodes. If the listener is intended to be a component custom event listener only, declare it using the "emits" option.

EDIT: I think it could be also related to latest Nuxt version 3.13.0 as I see some events that are present in the warning here: https://github.com/nuxt/nuxt/pull/27846/files#diff-cd4fbcd47a4d5f77080ef4e2727bba0f175c3a2042dea17cee5caf2f5a6e56fdR387-R388

Reproducer

https://stackblitz.com/github/frasza/primevue-menu?file=pages%2Findex.vue

PrimeVue version

4.0.5

Vue version

3.x

Language

TypeScript

Build / Runtime

Nuxt

Browser(s)

Chrome

Steps to reproduce the behavior

  1. Open console
  2. Click button Show menu
  3. Observe warning

Expected behavior

No response

frasza commented 2 weeks ago

After additional exploration, it seem to be related to Nuxt version 3.13.0.

I have achieved working version using it without custom and there is no warning:

<NuxtLink v-if="item.route" :to="{ name: item.route }">
        <div v-bind="props.action">
          <span :class="item.icon" class="text-lg text-gray-900" />
          <span class="ml-2">{{ item.label }}</span>
       </div>
</NuxtLink>
tugcekucukoglu commented 2 weeks ago

As far as I can see it will be fixed with version 3.13.1 for Nuxt.

Thank you.