Sketch007
@Sketch007

Как передать функцию в компонент через родителя во vue.js?

Страницы имеют след . структуру:

Родитель, файл - Vue.js
Потомки, компоненты -
<page-header>
<page-content>
<page-footer>


В хедере отрисовываются кнопки, предназначенные именно для текущей страницы, и по клику на них, должна выполнятся функция, которая уже существует в page-content, либо в контент страницы должна передаваться функция.

(например, открытие настроек чата)

Связать между собой эти два компонента у меня получилось, я могу передавать какие либо тестовые значения, но никак не могу понять, как передать/вызвать функцию

6249d4b0b82b6214635578.jpeg

Набросал примерную картинку, слева примеры страниц,
справа показано, что у разных контентов должен быть один и тот же хедер, но с разными кнопками
  • Вопрос задан
  • 252 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Я бы построил по другому принципу. Каждая страница - отдельный компонент, переключаемый через vue-router. В хидер передаётся описание кнопок. При нажатии на кнопку хидер генерирует событие с идентификатором кнопки. Страница обрабатывает событие, получает новые данные и передаёт их в контент.
<page-following>
  <page-header
    title="Following"
    :buttons="buttons"
    @buttonPressed="onButtonPressed"
  />
  <!-- здесь контент -->
  <page-footer />
</page-following>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы