Я использую v-if в своем родителе для условного рендеринга дочернего компонента.
Даже когда дочерний элемент не должен отображать смонтированную функцию, она все равно выполняется и приводит к ошибке в консоли.
Как убедиться, что дочерний компонент отображается при запуске метода, когда дочерний компонент отображается.
В моем случае я использую автофокус:
mounted: function () {
// Autofocus input on load.
this.$nextTick(() => this.$refs.input.focus());
},
Error in nextTick: "TypeError: _this.$refs.input is undefined"
console.info(this.$refs.input) дает объект:
<input class = "form-control" data-v-661f7e55 = "" type = "text" autocomplete = "off">



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Попробуй это.
<input class = "form-control" ref = "input" type = "text" autocomplete = "off">
mounted(){
this.$nextTick(() => this.$refs.input.focus())
}
Это отлично работает для меня. ref используется для регистрации ссылки на элемент или дочерний компонент.
так что это смонтировано в дочернем компоненте или в родительском компоненте?
Это в дочернем компоненте.
Проблема в том, что смонтированный все еще получает выполненное событие, когда дочерний компонент находится в v-if = "false". И эта строка кода должна выполняться после того, как дочерний элемент будет отображен на экране.