Содержимое слота
Vue реализует API распределения контента используя элемент <slot> в качестве точек распространения контента.
Например, это позволит составлять такие компоненты:
<navigation-link url="/profile">
Ваш профиль
</navigation-link>Для этого шаблон <navigation-link> должен быть например таким:
<a
v-bind:href="url"
class="nav-link"
>
<slot></slot>
</a>При отрисовке компонента <slot></slot> будет заменён на «Ваш профиль». Слоты могут содержать любой код шаблона, в том числе HTML:
<navigation-link url="/profile">
<!-- Добавляем иконку из набора Font Awesome -->
<span class="fa fa-user"></span>
Ваш профиль
</navigation-link>Или даже другие компоненты:
<navigation-link url="/profile">
<!-- Используем компонент для добавления иконки -->
<font-awesome-icon name="user"></font-awesome-icon>
Ваш профиль
</navigation-link>Если шаблон <navigation-link> не содержит элемент <slot>, любой переданный контент будет просто проигнорирован.
Last updated
Was this helpful?