node.js внутри жизненный цикл и animate.css анимации

1 Жизненный цикл
<шаблон>
<DIV ID = "lifeinfo">
<P> компонент жизненного цикла </ P>
<Button @ замковое = "changeData"> Изменить данные </ Button>
<P> {{MSG}} </ P>
</ DIV>
</ Template>
<Script>
Экспорт { по умолчанию
название: "lifeinfo",
beforeCreate () {
закреплять функция выполняет сборку до инициализации //
console.log ( "перед инициализацией");
},
создал ( ) {
после инициализации завершается сборка // изменен
( "после инициализации") в console.log;
},
данные () {
возвращение {
MSG: "данные перед модификацией"
};
},
методы: {
changeData () {
this.msg = "данные после модификации";
}
},
beforeMount () {
// до сборки монтирования
console.log ( "перед загрузкой");
},
навесные () {
Крепление сборка завершена //
console.log ( "монтирование завершено");
},
BeforeUpdate () {
до модификации сборки //
console.log ( "перед модификацией", this.msg);
},
обновление () {
после того, как сборка модифицированного //
console.log ( "после модификации", this.msg);
},
beforeDestroy () {
перед разгрузкой компонент //
console.log ( "перед разгрузкой");
},
разрушаемый () {
// после разгрузки компонента
console.log ( "после разгрузки");
}
};
</ Script>
2. анимация
<шаблон>
<DIV ID = "animateinfo">
<! - <P> VUE анимированный переход </ P>
< кнопка @ нажмите = "changeStatus"> переключения </ Button> ->
<!- обеспечивается по умолчанию увядает увядает
Если компонент перехода имя атрибута к моему-перехода ,
соответствующего настраиваемого пользовательского по умолчанию имя в качестве альтернативы переключился v-

-->
<!-- <transition name="slide-fade">

  <div class="block" v-if="ischange">动画</div>
</transition>-->

<!-- <transition name="transform-top-fade">
  <div class="nav" v-show="ischange">标题</div>
</transition>-->

<!-- 
    动画可以通过上面的方式来写   也可以通过  transition  组件提供的自定义过渡类名称的属性来写动画
    enter-class
    enter-active-class
    enter-to-class

    leave-class
    leave-active-class
    leave-to-class

    name属性写  custom-classes-transition  系统的动画类名称

-->
<!-- 下面的这个动画  和  讲的自定义类属性无关 -->
<div class="menu" @touchstart="startinfo" @touchmove="moveinfo" @touchend="endinfo">
  <ul class="navlist" key="1" :style="`transform:translate(${translateX}px);`">
    <li>喜剧</li>
    <li>科幻</li>
    <li>动画</li>
    <li>动漫</li>
    <li>记录</li>
    <li>魔幻</li>
    <li>爱情</li>
  </ul>
</div>
<!-- 
   写自定义类动画
-->
<transition
  name="custom-classes-transition"
  enter-active-class="animateenter"
  leave-active-class="animateleave"
  enter-class="animateinfoenter"
  leave-to-class="animateinfoleave"
>
  <div class="menulist" @click="isshow=!isshow" v-show="isshow">我是一个组件</div>
</transition>

<!-- 用animate  css 结合使用transition 
1.安装animate.css
2.mainjs 文件里面进行引入
3.直接在transition组件上使用
-->
<button @click="isblock=!isblock">animate</button>
<!-- :duration  属性是设置进入和离开的动画时间   写一个值 两个动画时间一直  也可以分开写 -->
<transition
  name="custom-classes-transition"
  enter-active-class="animated slideInRight"
  leave-active-class="animated fadeOutDown"
  :duration="{enter:100,leave:100}"
>
  <div v-if="isblock">使用animate.css</div>
</transition>
<!-- 
    transition 组件有对应的钩子函数  可以在钩子函数里面写代码
    v-on  监听

    使用  过渡结合动画
    velocity-animate@beta
    1.安装  cnpm install --save-dev velocity-animate@be
    2.直接在那个组件里面使用 在哪引入

-->
<transition
  @before-enter="beforeenter"
  @enter="enter"
  @after-enter="afterenter"
  @before-leave="beforeleave"
  @leave="leave"
  @after-leave="afterleave"
>
  <div v-if="isblock">使用animate.css</div>
</transition>

</ DIV>
</ Template>
<Script>
// включена анимация
Импорт из Velocity "Velocity-Animate";
Экспорт { по умолчанию
название: "animateinfo",
Data () {
возвращение {
ischange: к истинному,
в StartX: нуль,
EndX: нулевой ,
translateX: 0,
ВПЗ: 0,
isshow: к истинному,
isBlock: истина
};
},
навесные () {
; this.scw = window.screen.availWidth
},
{: Методы
beforeenter (EL) {
набор перед входом в анимации // CSS стиль
el.style.opacity = 0;
el.style.transformOrigin = "Центр";
},
введите (EL, DONE) {
console.log ( "анимация входа");
// полные настройки задержки набора петель вариант цикла после окончания функции обратного вызова задержки анимации Display & Visibility после завершения реализации анимации
// начнутся до начала анимации обратного вызова ослабление длительности одушевленных анимировать по времени
скорости (
EL ,
{Непрозрачность :. 1, то FONTSIZE: "30px"},
{
ПРОДОЛЖИТЕЛЬНОСТЬ: 1000,
Задержка: 300,
Бегин: () => {
console.log ( "анимация готова начать");
},
полный: () => {
Console .log ( "выполнение анимации в комплекте");
}
}
);
DONE (); // продолжить
},
afterenter (EL) {
скорость (
EL,
{Непрозрачность :. 1, то FONTSIZE: "25px", цвет: "# C0C0C0" },
{ПРОДОЛЖИТЕЛЬНОСТЬ: 500}
);
"анимации после ввода" в console.log ();
},
beforeleave (EL) {
console.log ( "Перед выходом Animation «);
}
Отпуска (EL, DONE) {
скорость (EL, {FONTSIZE: "40px", Opacity :. 1}, {ПРОДОЛЖИТЕЛЬНОСТЬ: 1000});
скорость (
EL,
{FONTSIZE: 0, Opacity: 0},
{Delay: 1000, СРОКИ : 1000}
);
console.log ( "анимация прочь");
},
afterleave (EL) {
console.log ( "анимации после выхода");
},
changestatus () {
this.ischange = this.ischange ;!
},
StartInfo (Е) {
// начать прикоснуться
к сенсорному пусть = e.touches;
this.startx касания = [0] .pageX;
},
moveinfo (Е) {
// касания перемещения
выпускаемого касания = e.touches;
this.endx = сенсорный [0] .pageX;
направление // Анализ сенсорный экран
this.translateX = 0;
ЕСЛИ (this.endx && this.startx) {
пусть = SX this.endx - this.startx;
если (SX <0) {
this.translateX + = SX;
если (Math.abs (this.translateX)> this.scw - 490) {
this.translateX = this.scw - 490;
}
} Еще {
this.translateX + = SX;
если (Math.abs (this.translateX)> this.scw - 490) {
this.translateX = - (this.scw - 490);
}
}
}
},
Endinfo (е) {
this.endx = NULL;
this.startx = NULL;
}
}
};
</ скрипт>
<стиль>
/ .block {
ширина: 100px;
высота: 100px;
границы: 1px твердые # 000;
границы радиус: 50%;
выравнивания текста: центр;
высота линии: 100px;
}
/
/ * Класс анимации

V-ввода , чтобы определить переход начальное состояние
состояние V-входа-активные для определения переходного состояния , чтобы принять эффект
клиновой отпуск определяемые от перехода исходного состояния
V-отпуск-активные определения выходить из состояния перехода в действие
состояние клиновых отпуска, чтобы определить левый конец перехода
/
/
. Слайд-Fade-Active-Enter,
слайд-Fade-несмываемый Active. {
Transition: Все lŠ;
}
. Слайд-Fade-Enter,
слайд-Fade к отпускам {.
Transform: translateX (40px) rotateZ ( 180deg);
Непрозрачность: 0;
}
.nav {
позиция: относительная;
ширина: 100%;
высота: 30px;
слева: 0;
Рейтинг: 0;
границы: 1px Твердое # C0C0C0;
}
.transform-Top-увядает-Active-Enter {
ПЕРЕХОДНОГО ПЕРИОДА: Все 0.3S ПРОСТОТА;
}
.transform-Top-Fade-Leave-Active {
Переход: все 1s простота в отъезде;
}
.Transform-топ-замирание войти,
.transform-топ-выцветанию-отпуск-к {
слева: 50%;
наверх: -100px;
ширина: 100px;
Непрозрачность: 0;
} * /

/ Запись в соответствии с пользовательским компонентом класса атрибутов перехода анимация /
.menu {
ширина: 100%;
высота: 40px;
высота строки: 40px;
границы: 1px Solid # 000;
Box-калибровочный: граница-Box;
переполнение: скрытый;
}
{.navlist
ширина: 490px;
переполнение: скрытый;
Переход: Линейный Все 0.1с;
}
.navlist> {Li
List-стиль: нет;
поплавок: левый;
ширина: 70px;
}

.menulist {
позиция: относительная;
высота: 100px;
ширина: 100%;
Слева направо : 0;
границы: 1px твердые # 000;
}
.Animateenter,
.animateleave {
переход: все 0.8s простота в отъезде;
}
.Animateinfoenter,
.animateinfoleave {
непрозрачности: 0;
ширина: 50%;
слева: 25%;
}
</ Стиль>

рекомендация

отblog.51cto.com/14584021/2484286
рекомендация