VUE笔记 - 列表过渡动画 v-enter, v-leave-to | v-enter-active, v-leave-active | v-move
本例要结合过渡动画四个过程的示意图一起理解。
https://cn.vuejs.org/v2/guide/transitions.html
疑问:
v-for="(item,i) in list" del(i) 传参不传id,改成i ,这个是什么用法?
<style>
li{
border: 1px dashed #999;
margin: 5px;
padding: 5px;
line-height: 25px;
font-size: 12px;
width: 800px;
}
li:hover{
background-color: hotpink;
transition: all 0.8s ease;
}
.v-enter,.v-leave-to {
/* .v-enter, .v-leave-to 设置的过渡样式
自动赋给transition 或 transitiongroup标签了 */
opacity: 0;
transform: translateY(80px);
}
.v-enter-active, .v-leave-active {
/* .v-enter-active, .v-leave-active 设置的过渡样式
自动赋给transition 或 transitiongroup标签了 */
transition: all 0.6s ease;
}
.v-move{
transition: all 0.6s ease;
}
/* v-move 特性。会在元素的改变定位的过程中应用。
比如列表中有元素被删除,其他元素会上移
设置了v-move就会在这起作用. */ .v-leave-active{
position: absolute;
/* 当元素设置了 absolute 后,默认就不是100%的宽度了,而是内容多宽就是多宽
所以要给li元素设置一下宽度. */
}
/* 用splice删除数组的元素,由于删除的元素经历了一个过渡,始终占据文档流的这个位置,
因此下一个元素要等待其过渡消失后再移动过来,造成一个生硬的效果。 要达到平滑过渡,就要在删除元素leave-active阶段,
用position:absolute 让删除的元素脱离文档流,后面的元素才能同时平滑过渡过来。
*/
</style>
</head>
<body>
<div id="app">
ID:<input type="text" v-model="id">
NAME:<input type="text" v-model="name">
<input type="button" value="添加" @click="add()"> <!-- 通过 appear 特性设置节点的在初始渲染的过渡
也就是页面刚加载的时候,实现过渡动画 -->
<transition-group tag="ul" appear>
<li v-for="(item,i) in list" @click="del(i)" :key="item.id">
<!-- v-for="(item,i) in list"
del(i) 传参不传id,改成i ??? 这个是什么用法-->
{{item.id}} --- {{item.name}}
</li>
</transition-group>
</div> <script>
var vm = new Vue({
el:'#app',
data:{
id:'',
name:'',
list:[
{id:1, name:'赵高'}, // list里用到的id name 等,要先定义在data
{id:2, name:'秦桧'},
{id:3, name:'严嵩'},
{id:4, name:'魏忠贤'}
]
},
methods:{
add(el){
this.list.push({id:this.id, name:this.name});
this.id = this.name = '';
},
del(i){
this.list.splice(i,1); // i 的用法??
},
},
});
</script>
</body>
VUE笔记 - 列表过渡动画 v-enter, v-leave-to | v-enter-active, v-leave-active | v-move的更多相关文章
- iOS学习笔记-自定义过渡动画
代码地址如下:http://www.demodashi.com/demo/11678.html 这篇笔记翻译自raywenderlick网站的过渡动画的一篇文章,原文用的swift,由于考虑到swif ...
- vue 过渡效果-列表过渡
到目前为止,关于过渡我们已经讲到, 单个节点 同一时间渲染多个节点的一个 那么怎么同时渲染整个列表,比如使用v-if?在这种场景下,使用<transition-group>组件,在我们深入 ...
- vue.js之过渡动画
vue提供了一个封装动画的组件 <transition name="tr"></transition>,将需要执行动画的元素包裹在该组件中,在通过css修改 ...
- Vue.js 之 过渡动画
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 058_末晨曦Vue技术_过渡 & 动画之过渡的类名
进入/离开 & 列表过渡 点击打开视频讲解更加详细 概述 Vue 在插入.更新或者移除 DOM 时,提供多种不同方式的应用过渡效果.包括以下工具: 在 CSS 过渡和动画中自动应用 class ...
- Vue - 解决路由过渡动画抖动问题
前言 Vue-Router 作为 Vue 的核心模块,它为我们提供了基于组件的路由配置.路由参数等功能,让单页面应用变得更易于管理.良好的路由管理尤为重要,比如路由拦截.路由懒加载.路由权限等都在开发 ...
- 066_末晨曦Vue技术_过渡 & 动画之多个元素的过渡
多个元素的过渡 点击打开视频讲解更加详细 我们之后讨论多个组件的过渡,对于原生标签可以使用 v-if/v-else.最常见的多标签过渡是一个列表和描述这个列表为空消息的元素: <transiti ...
- vue笔记-列表渲染
用v-for把一个数组对应为一组元素 使用方法:v-for="(item,index) in items"//也可以使用of替代in { items:源数组 item:数组元素迭代 ...
- Vue中Js动画 与Velocity.js 多组件多元素 列表过渡
Vue提供我们很多js动画钩子 写在tansition标签内部 入场动画 @before-enter="" 处理函数收到一个参数(e l) el为这个元素 @enter=" ...
随机推荐
- SP1026 FAVDICE - Favorite Dice 数学期望
题目描述: 一个n面的骰子,求期望掷几次能使得每一面都被掷到. 题解:先谈一下期望DP. 一般地,如果终止状态固定,我们都会选择逆序计算. 很多题目如果顺序计算会出现有分母为 0 的情况,而逆序计算中 ...
- Vue_小练习
<!DOCTYPE html> <html lang='en'> <head> <meta charset='UTF-8'> <meta name ...
- nginx下修改svn配置
最近公司的SVN服务器地址做了变更,而我用的操作系统是Ubuntu操作系统,我也不想把以前下载的代码重新进行修改,我想通过修改svn地址,应该可以,终于在网上通过查找资料,找到了解决的方法: ...
- WP8 学习笔记(002_应用程序结构)
下图是微软官方给出的WP8应用程序执行顺序: 在App.XAML.CS中,有程序主要步骤的函数 // 应用程序启动(例如,从“开始”菜单启动)时执行的代码 // 此代码在重新激活应用程序时不执行 pr ...
- CentOS下安装.net core环境并部署WebAPI
1.安装CentOS 7 2.安装.net Core 2环境,参考官方文档:(建议采用SDK (tar.gz)安装) https://www.microsoft.com/net/download/li ...
- thinkphp3.2.3 隐藏url上home模块以及index.php文件
1.去掉Home index.php 添加如下代码 define('BIND_MODULE', 'Home'); 这时就隐藏了url中的Home 2.去掉index.php thinkphp3.2.3 ...
- SAP学习之路
此贴记录学习SAP过程~如有错误请指出~ 6.看着网上学习SAP的貌似比較花精力.学习好的话发展前景还是不错的 5.尽管还不是非常懂.可是还是充满期待,期待着java转型abap. 能够在虚拟机上安装 ...
- Qt Installer Framework的学习(二)
Qt Installer Framework的学习(二) Qt Installer Framework的一些操作能够使用最常见的Qt项目来表示,也就是说,书写pro文件,使用qmake执行之,除了能够 ...
- C#变量引用与全局变量
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- js --- return返回值 闭包
什么是闭包?这就是闭包! 有权访问另一个函数作用域内变量的函数都是闭包.这里 inc 函数访问了构造函数 a 里面的变量 n,所以形成了一个闭包. function a(){ var n = 0; f ...