vue --- 动画执行的周期(动画的钩子函数)

如下8个:

<transitionv-on:before-enter = "beforeEnter"v-on:enter = "enter"v-on:after-enter = "afterEnter"v-on:enter-cancelled = "enterCancelled"v-on:before-leave = "beforeLeave"v-on:leave = "leave"v-on:after-leave = "afterLeave"v-on:leave-cancelled = "leaveCancelled"
>
</transition>

举个栗子:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><link rel="stylesheet" href="../node_modules/animate.css/animate.css"><style>.ball {width: 15px;height: 15px;border-radius: 50%;background-color: red;}</style>
</head><body><div id="app"><input type="button" value="快到碗里来" @click="flag=!flag"><transition @before-enter="beforeEnter" @enter="enter" @after-enter="afterEnter"><div class="ball" v-if="flag"></div></transition></div><script src="../node_modules/vue/dist/vue.js"></script><script>const app = new Vue({el: '#app',data: {flag: false},methods: {beforeEnter(el) {// 设置小球 开始动画的起始位置el.style.transform = "translate(0,0)"},enter(el, done) {// el.offsetWidth 会强制动画刷新el.offsetWidth;el.style.transform = "translate(150px, 450px)";el.style.transition = "all 1s ease";// done是afterEnter函数的引用...表示结束了 立即调用afterEnter()done()},afterEnter(el) {this.flag = false;}},})</script>
</body></html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/250800.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二分查找c++

相信对于二分查找的原理大家已经明白&#xff0c;接下来就是代码实现了 1 #include <iostream>2 #include <cstdio>3 #include <algorithm>4 #include <cstring>5 #include <string>6 #include <cstdlib>7 8 using namespace std;9 10 in…

php获取网址

1 #测试网址: http://localhost/blog/testurl.php?id52 3 //获取域名或主机地址 4 echo $_SERVER[HTTP_HOST]."<br>"; #localhost5 6 //获取网页地址 7 echo $_SERVER[PHP_SELF]."<br>"; #/blog/testurl.php8 9 //获取网址参数 10 echo …

6 useRef、useImperativeHandle

useRef在每次执行时返回的是同一个引用&#xff08;返回的ref对象在组件的整个生命周期内保持不变&#xff09;在函数组件中可以使用useRef和createRef但useRef性能比createRef好&#xff0c;快在类组件中&#xff0c;createRef是在初始化constructor时被赋值的&#xff08;执行…

vue --- 列表(v-for渲染)的各种神仙动画效果

通过v-for生成的元素,使用transition包裹将只显示第一条数据,此时需要使用transition-group包裹. <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-wid…

linux命令目录

一、文件和目录。&#xff08;文件目录的增删改查&#xff09; lspwdcdmkdirtouchrmdirlnddrmcpmvnlcattacmorelessheadtailstat###########################################grepawksed findlocatewhichwhereiswc ############################################dfdumountumoun…

vue --- 使用component的 :is属性切换标签页

点击对应的标签,下面切换至对应的模板… // 说明 <component :is"name"></component> // 相当于把id为name的组件放到对应的位置总体代码如下: <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"…

3-15 《元编程》第6章 3-16 hook method

Code That Writes Code 6.1 Coding your way to the weekend 6.2 Kernel#eval, Binding#eval Binding: Objects of class Binding(类Binding的对象) encapsulate &#xff08;密封&#xff09;the execution context at some particular place in the code and retain this c…

7 useLayoutEffect、useDebugValue

useEffect&#xff1a;dom完成渲染后执行 不传参数&#xff0c;每次都会执行 传空的依赖[]&#xff0c;只会执行一次 有依赖&#xff0c;依赖项变化会执行 useEffect实现动画效果 import { useEffect, useRef, useState } from "react"const App () > {const [,…

【Linux】用户与权限

追加用户组 groupadd 用户组名 追加新用户 useradd -d 指定用户目录 -s 指定用户使用shell -g 指定用户组 -p 指定用户密码 用户名 更改用户 添加用户到其他组 usermod -G 用户组 用户名 修改用户密码 passwd 用户名 删除用户 userdel [参数] 用户名参数&#xff1a;-f&#x…

es6 --- map的使用

思路: 1.使用一个map数组来保存nums1中出现的元素及其次数. 2.遍历nums2.使用map的has方法来检测nums2中的元素是否出现在map中,若出现则加入返回数组(retArr),且map数组中的次数减1 /*** param {number[]} nums1* param {number[]} nums2* return {number[]}*/ var intersect…

NOIP2005普及组第3题 采药 (背包问题)

NOIP2005普及组第3题 采药    时间限制: 1 Sec 内存限制: 128 MB提交: 50 解决: 23[提交][状态][讨论版][命题人:外部导入]题目描述 辰辰是个天资聪颖的孩子&#xff0c;他的梦想是成为世界上最伟大的医师。为此&#xff0c;他想拜附近最有威望的医师为师。医师为了判断他…

前端面试之Vue相关总结

Vue2中检测数组变化的限制和解决方法 vue2用下标设置数组没效果 arr [1,2] arr[0] 0,页面上显示的arr并没有修改(如果对应下标是原始值&#xff1b;若是引用值)解决1&#xff1a;Vue.Set解决2&#xff1a;arr.splice (Vue会劫持splice方法) Vue2对对象是循环defineProperty…

JS和安卓 IOS的交互 例子式记录

(function () { var u navigator.userAgent; var isAndroid u.indexOf(Android) > -1 || u.indexOf(Adr) > -1; //android终端 var isiOS !!u.match(/\(i[^;];( U;)? CPU.Mac OS X/); if(isAndroid){ (function(){ function android_i…

vue --- ref属性获取dom元素和子组件的方法

说明: // 假设login的组件定义如下: Vue.component(login, {template:<h1>登录</h1>,data(){return {msg:son msg,}},methods(){show(){console.log(调用子组件的方法);}} }) // 在父元素中使用 <div id"app"><login ref"myLogin"&g…

【工程师综合项目二】React + Koa2打造『JS++官网管理后台』

Redis认知、安装与操作 MongoDB&#xff1a;动态数据库&#xff0c;如游戏中需要频繁地保存人物的坐标 Oracle&#xff1a;收费&#xff0c;企业级 mac要安装homebrew&#xff08;包管理工具&#xff09; window安装Redis程序运行教程 命令行Redis操作 启动&#xff1a; redis-…

webpack --- html-webpack-plugin

安装 cnpm i html-webpack-plugin -D配置 (webpack.config.js) // webpack 是基于node构建的,webpack的配置文件中,任何合法的Node代码都是支持的 var path require(path)// 在内存中生成src下的index.html,同时自动将打包好的bundle.js 导入到页面中 var htmlWebpackPlugin…

nyoj164——卡特兰数(待填坑)

题意&#xff1a;将1~2n个数按照顺时针排列好&#xff0c;用一条线将两个数字连接起来要求&#xff1a;线之间不能有交点&#xff0c;同一个点只允许被连一次。 最后问给出一个n&#xff0c;有多少种方式满足条件。 卡特兰数&#xff08;列&#xff09;&#xff1a; 令h(0)1,h(…

git 使用

1. 先进入项目文件夹&#xff0c;通过命令 git init 把这个目录变成git可以管理的仓库 git init 2. 把文件添加到版本库中&#xff0c;使用命令 git add .添加到暂存区里面去&#xff0c;不要忘记后面的小数点“.”&#xff0c;意为添加文件夹下的所有文件 git add . 3. 用命令…

webpack --- 使用vue

// webpack中如何使用 vue: // 1. 安装vue 的包: cnpm i vue -S // 2. 由于在 webpack 中,推荐使用 . vue 这个组件模板文件定义组件, 所以需要安装能解析这种文件的loader cnpm i vue-loader vue-template-compiler -D // 3. 在main.js 中导入 vue的包, import Vue from vue…

ES6杂碎

1、let声明的变量没有变量提升&#xff1b; 2、const声明的变量&#xff1a;块级作用域内有效&#xff0c;存在暂时性死区&#xff0c;变量指向的那个内存地址不得改动&#xff1b; 3、...tail解构出来的是数组或空数组 let [head, ...tail] [1, 2, 3, 4]; head //1 tail //[2…