En mi aplicación vue
, necesito hacer un <nuxt-img />
en el que se pueda hacer clic, así que traté de hacer esto:
<nuxt-img :src="image.src" @click="isClickable ? doSomeStuff : null" />
pero por alguna razón que no sé, esto no funciona, no sucede nada al hacer clic.
¿Alguien puede decirme qué estoy haciendo mal?
Intenta agregar el modificador native
:
@click.native="isClickable ? doSomeStuff : null"
Pasaría una función allí, como alguien ya sugirió en los comentarios:
@click="() => isClickable ? doSomeStuff : null"
pero sería mejor encerrar la lógica en un método y llamar al método @click="handleClick"
... methods: { handleClick(){ if(this.isClickable){ this.doSomeStuff() } }
<nuxt-img :src="image.src" @click="isClickable ? doSomeStuff : null" />
doSomeStuff tiene que ser definido como una función para ser llamado así
De lo contrario, deberías llamarlo con un golpe
Por ejemplo:
<nuxt-img :src="image.src" @click="isClickable ? () => doSomeStuff : null" />
Aún así, le daría un valor indefinido al evento @onclick en lugar de un valor nulo
<nuxt-img :src="image.src" @click="isClickable ? () => doSomeStuff : undefined" />