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=" ...
随机推荐
- C#读写config配置文件--读取配置文件类
一:通过Key访问Value的方法: //判断App.config配置文件中是否有Key(非null) if (ConfigurationManager.AppSettings.HasKeys()) ...
- 微信小程序官方文档中的加密算法
用Nodejs来算一下:
- lunix 安装使用mongo
一.下载安装mongo版本客户端 1.进入mongo官网选择需要的版本号: https://www.mongodb.com/download-center/community(官网网址) 2.选择下载 ...
- springboot 前后端分离开发解决跨域访问
最近新学习了Java EE开发框架springboot,我在使用springboot前后台分离开发的过程中遇到了跨域求问题.在网上寻找答案的过程中发现网上的解决方案大多比较零散,我在这里整理一个解决方 ...
- OCP-1Z0-051-题目解析-第27题
27. Which two statements are true regarding tables? (Choose two.) A. A table name can be of any len ...
- Swift vs C# Go OC
Swift vs C# mod=view&aid=21" target="_blank">http://www.swifthumb.com/porta ...
- 关于getinstalledpackages參数的分析。
此blog不写API的使用方法仅仅分析此參数的知识点. 今天学习安卓突然学习到了getinstalledpackages()的方法获取到安装应用信息 ,他接收一个int flags的值.然后在网上查询 ...
- 关于Java IO InputStream 的一点整理!
程序的开发其中一直在用文件的读写.可是对于java其中输入流以及输出流仅仅是会用不理解,一直以来想搞清楚其,可是一直没有运行(悲剧).今天早上抽出半个小时通过JDK API1.6.0中文版帮助逐步的了 ...
- HTTP请求具体解释
1. HTTP请求格式 做过Socket编程的人都知道,当我们设计一个通信协议时,"消息头/消息体"的切割方式是非经常常使用的.消息头告诉对方这个消息是干什么的,消息体告诉对方怎么 ...
- Android学习笔记进阶19 之给图片加边框
//设置颜色 public void setColour(int color){ co = color; } //设置边框宽度 public void setBorderWidth(int width ...