Рубрики
Vue директива Vue кастомная директива Vue.js

Собственная Директива

  • Файл директивы
    directives\VMyDirective.js
export default{
 name:MyDirective,
 //el - текущий элемент к которому привязана директива
 //хук - например Mounted
 Хук(el, binding){
 //binding.value значение передаваемое от директивы
 }
}
  • Хранилище собственных директив
    Удобнее содержать список собственных директив в одном файле как библиотеку.
    directives\index.js
import VMyDirective from './directives/VMyDirective';
export defualt[
 VMyDirective,
]
  • Регистрация цикла собственных директив
import App from './App';
//import VMyDirective from './directives/VMyDirective';
import directive from './directives';

const app = createApp(App);
//add.directive('mydirective',VMyDirective);
directives.forEach(directive=>{
 app.directive(directive.name,directive);
})
add.mount('#app');
  • Собственная директива
    используется каким-то компонентом
<template>
//binding- функция,объект и т.д.
<el v-mydirective="binding"></el>
</template>
Рубрики
Vue Mixins Vue компонент Vue3 логика

Структура Mixins в Vue

  • Структура примеси файла
    mixins/ИмяМексина.js
export default {
 props:{prop1},
 data(){},
 methods:{},
 computed:{},
 watch:{},
...
}
  • Использование примеси в компоненте
    На примере обращение к пропсу prop1
<template>
{{prop1}}
</template>
<script>
import ИмяМексина from './mixins/ИмяМексина';
export default {
 mixins:[ИмяМексина],
}
</script>
Mixins во Vue.js
Vue.js
Рубрики
Composition Api Vue декомпозиция Vue3 логика

Composition API (setup) в компоненте

setup
функция принимает параметры props

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

Всё что мы вернём функции setup будет доступно в шаблоне компонента <template>

<template>
<div>{{myvar}}</div>
</template>
<script>
import {ref} from 'vue'
export default {
 setup(props){
  const myvar=ref(Значение);
  return {myvar};
 }
}
</script>

Состав
Динамически изменить переменную
Value

  • создаём стрелочную функцию, в которой внутри тела изменяем значение переменной, обращаясь к полю value
  • отметим возвращение функции addmyvar из setup для доступа в шаблоне компонента
    (привязка к button прослушивание события click)
<template>
<div>{{myvar}}</div>
<button @click="addmyvar">add</button>
</template>
<script>
import {ref} from 'vue'
export default {
 setup(props){
  const myvar=ref(0);
  const addmyvar = () =>{
    myvar.value+=1;
  }
  return {myvar,addmyvar };
 }
}
</script>
Рубрики
Laravel Laravel основы Роут Роуты для Laravel проекта

Laravel Route с примерами

В Laravel Route с примерами представляют простейшие маршруты принимают URI (путь) и функцию-замыкание, предоставляя очень простой и выразительный метод определения маршрутор.

Все маршруты определены в файлах маршрутов, которые расположены в каталоге routes. Эти файлы автоматически загружаются фреймворком.

В файле routes/web.php определены маршруты для вашего web-интерфейса. Эти маршруты входят в группу посредников web, которые обеспечивают такие возможности, как состояние сессии и CSRF-защита. Маршруты из файла routes/api.php не поддерживают состояния и входят в группу посредников api.

Для большинства приложений сначала определяются маршруты в файле routes/web.php.

Синтаксис Laravel Route

$uri

хост\api\путь

$callback

роут вызывает колбэк-функцию или обратный вызов
функция, переданная в другую функцию в качестве аргумента, которая затем вызывается по завершению какого-либо действия.

routes\api.php

get роут получает информацию от сервера
Route::get($uri, $callback);
post роут отправляет информацию на сервер для хранения
Route::post($uri, $callback);
примеры Route в Laravel
Routes
Рубрики
Vue директива Vue основы Vue.js

Условная Директива

v-if

v-if директива if
bool выражение,которое возвращает true или false
если возвращает false, тогда тег удаляется
если возвращает true, тогда тег добавляется
<тег v-if="bool"/>

v-else

v-else директива else
если директива v-if возвращает false, тогда тег добавляется
если директива v-if возвращает true, тогда тег удаляется
<тег v-else/>