利用vue.js写一个带有动画的todolist程序
时间: 2024-05-09 18:21:51 浏览: 169
当然,我可以为您提供一些指导。首先,您需要安装Vue.js。然后,您可以使用Vue.js的动画功能来创建一个具有一些动画效果的todolist程序。您可以使用Vue.js中的transition组件来控制进入和离开时的动画。以下是一个简单的代码示例:
HTML:
```
<div id="app">
<transition-group name="list" tag="ul">
<li v-for="item in items" :key="item.id">
{{ item.task }}
<button @click="removeItem(item)">Remove</button>
</li>
</transition-group>
<form @submit.prevent="addItem">
<input type="text" v-model="newItem" placeholder="Add a new task">
<button type="submit">Add</button>
</form>
</div>
```
CSS:
```
.list-enter-active, .list-leave-active {
transition: all 0.5s;
}
.list-enter, .list-leave-to {
opacity: 0;
transform: translateY(30px);
}
```
JavaScript:
```
new Vue({
el: "#app",
data: {
items: [
{ id: 1, task: "Do laundry" },
{ id: 2, task: "Buy groceries" },
{ id: 3, task: "Clean the house" }
],
newItem: ""
},
methods: {
addItem() {
this.items.push({
id: this.items.length + 1,
task: this.newItem
});
this.newItem = "";
},
removeItem(item) {
const index = this.items.indexOf(item);
this.items.splice(index, 1);
}
}
});
```
在这个例子中,我们使用Vue.js的transition-group组件来动态渲染todolist的项目。我们使用了CSS来定义进入和离开时的动画,然后将其应用到Vue.js的transition组件上。最后,我们使用Vue.js的数据绑定和方法来添加和删除项目。
阅读全文