Tengo un componente, ¿cómo puedo seleccionar uno de sus elementos?
Estoy tratando de obtener una entrada que esté dentro de la plantilla de este componente.
Puede haber varios componentes, por lo que el selector de consultas solo debe analizar la instancia actual del componente.
Vue.component('somecomponent', {
template: '#somecomponent',
props: [...],
...
created: function() {
somevariablehere.querySelector('input').focus();
}
});
Gracias por adelantado
fuente

this.$elno está definido hasta que se monta. Si desea inicializar una variable, hágalo enmount()vuejs 2
v-el:el:uniquenameha sido reemplazado porref="uniqueName". A continuación, se accede al elemento a través dethis.$refs.uniqueName.fuente
refatributo funciona en cualquier elemento HTML o componente Vue. Buen material.Las respuestas no lo dejan claro:
Use
this.$refs.someName, pero, para usarlo, debe agregarref="someName"el parent .Vea la demostración a continuación.
$refsyv-forTenga en cuenta que cuando se usa junto con
v-for,this.$refs.someNameserá una matriz:fuente
En Vue2, tenga en cuenta que puede acceder a este. $ Refs.uniqueName solo después de montar el componente.
fuente
Vue 2.x
Para información oficial:
https://vuejs.org/v2/guide/migration.html#v-el-and-v-ref-replaced
Un ejemplo simple:
En cualquier elemento, debe agregar un atributo
refcon un valor únicoPara apuntar a ese uso de elemet
this.$refs.foofuente
API de composición
La sección de referencias de la plantilla indica cómo se ha unificado esto:
ref="myEl";:ref=con unv-forconst myEl = ref(null)y exponerlo desdesetupLa referencia lleva el elemento DOM desde el montaje en adelante.
fuente