Lo explico mejor con un ejemplo:
<template> <Comp prop="ex" @click.native="log" /> </template>Tener este componente en mi aplicación, ¿hay alguna forma de obtener el valor de utilería del script con algo como esto? (Esperando "ex" para iniciar sesión):
<script> import Comp from './components/Comp.vue' export default { components: { Comp }, methods: { log() { console.log(Comp.prop) } } } </script>Y si hay una forma, ¿cambia cuando se tienen varias instancias del mismo componente?
En este ejemplo prop prop está codificado para ser una cadena ex . Este valor está disponible en Comp hijo pero no en el padre. Para acceder a él en el padre, debe estar disponible en el estado del padre:
data() { return { compPropValue: 'ex' } }, methods: { log(value) { console.log(value) } }Y usado como:
<Comp :prop="compPropValue" @click.native="log(compPropValue)" />Se me acaba de ocurrir que simplemente puedo pasar el valor que necesito como parámetro de la función:
<template> <Comp prop="ex" @click.native="log("ex") /> </template> <script> import Comp from './components/Comp.vue' export default { components: { Comp }, methods: { log(s) { console.log(s) } } } </script>¡Sin embargo, si alguien sabe cómo hacer lo que yo quería, sería útil!