'this. $ refs' всегда пусто в родительском компоненте

Я пытаюсь сделать стандартную реализацию ref, чтобы я мог вставлять дочерние элементы в свой InfoBox. Но все, что я называю элементом 'ref', никогда не попадает в мой компонент InfoBox. Результатом всегда является {} undefined из журнала вызовов.

Обработчик кликов предназначен для проверки проблем с синхронизацией, поскольку использование created против mounted казалось распространенной проблемой.

<InfoBox
  v-if = "waitingForCode">
  <p ref = "infoboxcontent">A 7-digit verification code has been sent.</p>
</InfoBox>

а также

<template>
  <div
    class = "info-box"
    @click = "clicked" >
    {{ this.$refs.infoboxcontent }}
  </div>
</template>

<script>
export default {
  name: 'InfoBox',
  mounted() {
    console.info(this.$refs, this.$refs.infoboxcontent)
  },
  methods: {
    clicked() {
      console.info(this.$refs, this.$refs.infoboxcontent)
    }
  }
}
</script>

<style scoped>
  // some style
</style>

Я начинаю думать, что в корне неправильно понимаю использование атрибута ref, поскольку это кажется тривиальным примером. Любая помощь будет принята с благодарностью.

Если вы думаете, что используете ссылки, где вам следует использовать слоты

Vivick 15.06.2018 12:29
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
1 173
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Специальный атрибут ref Vue используется для ссылки на узел DOM (или дочерний компонент) из вашего текущий шаблон компонента.

Если вы хотите передать некоторый контент в пользовательский компонент, это вариант использования встроенного компонента <slot> Vue.

также: Важное примечание о времени регистрации ссылок: поскольку сами ссылки создаются в результате функции рендеринга, вы не можете получить к ним доступ при первоначальном рендеринге. документация

Volodymyr Symonenko 15.06.2018 16:36

Другие вопросы по теме