Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

@click not working inside LazyHydrate #127

Open
gutisalex opened this issue Mar 17, 2022 · 2 comments
Open

@click not working inside LazyHydrate #127

gutisalex opened this issue Mar 17, 2022 · 2 comments

Comments

@gutisalex
Copy link

Is there a reason why @click listener not working when they are sitting in a component wrapped with LazyHydrate? I have a Navigation which has Navigationitems fetched from an API. First time routing to the page everything works fine. After pagerefresh it doesnt... any idea?

@b-karapet
Copy link

b-karapet commented May 19, 2022

Hi @gutisalex, I faced with the same issue

The reason of issue was that I used <LazyHydrate on-interaction> which is the same as <LazyHydrate on-interaction="focus">
Focus is used by default

Try to use <LazyHydrate on-interaction="click">

@neatcoding
Copy link

I had the same problem - indeed 'click' made it hydrate, but didn't call the @click callback.

  • On mobile - adding "touchstart" helps
  • On desktop - adding "mousedown" helps (or "mouseover")

So if you have the same problem with @click:

<LazyHydrate :on-interaction=["click", "focus", "touchstart", "mousedown"]>

or

import { hydrateOnInteraction } from 'vue-lazy-hydration';
export default {
  components: {
    ComponentName: hydrateOnInteraction(() => import(
      '~/components/path/ComponentName.vue'
    ), {event: ['click', 'focus', 'touchstart', 'mousedown']}),
  },
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants