У меня есть компонент, как мне выбрать один из его элементов?
Я пытаюсь получить входные данные в шаблоне этого компонента.
Компонентов может быть несколько, поэтому селектор запросов должен анализировать только текущий экземпляр компонента.
Vue.component('somecomponent', {
template: '#somecomponent',
props: [...],
...
created: function() {
somevariablehere.querySelector('input').focus();
}
});
заранее спасибо
javascript
vue.js
Snewedon
источник
источник
this.$el
не определено, пока не будет установлено. Если вы хотите , чтобы инициализировать переменную сделать этоmount()
vuejs 2
v-el:el:uniquename
был заменен наref="uniqueName"
. Затем доступ к элементу осуществляется черезthis.$refs.uniqueName
.источник
ref
атрибут работает с любым элементом HTML или компонентом Vue. Хорошая вещь.Ответы не проясняют:
Используйте
this.$refs.someName
, но, чтобы использовать его, вы должны добавитьref="someName"
родительский .См. Демонстрацию ниже.
$refs
иv-for
Обратите внимание, что при использовании вместе с
v-for
, этоthis.$refs.someName
будет массив:источник
В Vue2 имейте в виду, что вы можете получить доступ к this. $ Refs.uniqueName только после монтирования компонента.
источник
Vue 2.x
Для официальной информации:
https://vuejs.org/v2/guide/migration.html#v-el-and-v-ref-replaced
Простой пример:
На любом элементе вы должны добавить атрибут
ref
с уникальным значениемЧтобы настроить таргетинг на этот элемент, используйте
this.$refs.foo
источник
Composition API
В разделе шаблонов ссылок рассказывается, как это было унифицировано:
ref="myEl"
;:ref=
сv-for
const myEl = ref(null)
и выставлять его изsetup
Ссылка переносит элемент DOM с момента монтажа.
источник