Рубрики
Vue.js Vue директива v-bind

Добавление динамических классов в Vue

<template>
<тег v-bind:class="{НазваниеКласса,Код}">
</template>

Код
условие bool, по которому будет добавляться этот класс

Рубрики
Vue директива v-bind Vue компонент.script.data Vue компонент.script Vue компонент.script.props

Передаём переменную data дочерней компоненте Vue

  • Родительская компонента содержит переменную в data
<template>
<comp v-bind:ИмяПропса="ИмяОбъекта">
</template>

<script>
export default{
data(){
 return {
  ИмяОбъекта: Значение
 }
}
}
</script>
  • Дочерняя компонента comp
    пропсы нельзя изменять
<script>
export default{
props:{
ИмяПропса:{
 type:Array,
 requered:true,
}
}
}
</script>
Рубрики
Vue.js Vue директива

Vue директива v-on

  • структура использования директивы в теге как атрибут
    v-on: ИмяСобытия=<<ИмяФункции>>

Эта директива парсится
в момент наступления события ИмяСобытия

сокращенная запись использования
@: ИмяСобытия=<<ИмяФункции>>

  • Использование директивы v-on в компоненте
    повесить слушатель события и связать с кнопками
<template>
<div>
<button v-on:click="addLike">Likes</button>
<button v-on:click="addDislike">Dislikes</button>
</div>
<div>
<div>Кол-во лайков: <strong>{{ likes }}</strong></div>
<div>Кол-во дизлайков: <strong>{{ deslikes }}</strong></div>
</div>
</template>

<script>
export default{

data(){return {likes: 0,dislikes: 5}}
methods:{ 
 addLike(){this.likes +=1;}
 addDislike(){this.dislikes +=1;}
}
</script>

<style>
</style>
Рубрики
Vue компонент.script.data

data в компоненте

создание функции внутри default
пример data

  • Свойство data в компоненте всегда должна быть функцией, которая возвращает объект.

функция data возвращает объект
внутри возвращаемого объекта описываются все поля или модели

Интерполяция
синтаксис
{{Модель}}

  • встраивание поля в шаблон и
    регистрация поля data в компонент
    src\App.vue
<template>
<div>
<div>Кол-во лайков: <strong>{{ likes }}</strong></div>
<div>Кол-во дизлайков: <strong>{{ deslikes }}</strong></div>
</div>
</template>

<script>
export default{

data(){
return {likes: 0,dislikes: 5}
}
}
</script>

<style>
</style>
data в компоненте во Vue.js
Vue.js
Рубрики
Vue основы Vue директива

Директива v-slot

Директива v-slot была представлена как новый единый синтаксис в версии 2.6.0

Предназначен для именованных слотов и слотов с ограниченной областью видимости.

Он заменяет атрибуты slot и slot-scope, которые в настоящий момент объявлены устаревшими, но _не_ удалены и документированы здесь. Обоснование введения нового синтаксиса описано в этом RFC.

Получаем более читабельный код, особенно, если имеем дело с вложенными слотами, когда действительно трудно понять что к чему.

можно использовать только для компонентов и тегов template, но не в чистых HTML-тегах.

директива v-slot во Vue.js
Vue.js