todolist的效果实现需要用到之前几节课学到的只是,首先是数据的双向绑定v-model,循环v-for,事件绑定v-click,还有判断v-if,还有一个keydown方法的应用;
代码实例
<template>
<div id="app">
<input type="text" v-model='todol' ref="todo"/>
<button v-on:click="getdata()">增加</button>
<br/>
<br/>
<br/>
<h2 >正在进行中</h2>
<ul >
<li v-for="(item,key) in todolist" v-if="!item.checked">
<input type="checkbox" v-model='item.checked'> {{key}}-{{item}}--{{item.checked}}
<button @click="deldata(key)">删除</button>
</li>
</ul>
<br/>
<br/>
<br/>
<h2>已完成</h2>
<ul >
<li v-for="(item,key) in todolist" v-if="item.checked">
<input type="checkbox" v-model='item.checked'> {{key}}-{{item}} ----{{item.checked}}
<button @click="deldata(key)">删除</button>
</li>
</ul>
<br/>
<br/>
</div>
</template>
<script>
export default {
name: 'app',
data () {
return {
msg: 'Welcome to Your Vue.js App',
todol:'',
todolist:[]
}
},methods:{
getdata(key){
//alert(this.$refs.todo.value);
//this.todolist.push(this.$refs.todo.value);
// console.log(this.$refs.todo);
this.todolist.push(
{
checked:false,
title:this.todol
}
)
},
deldata(key){
alert(key);
this.todolist.splice(key,1)
}
}
}
</script>
效果图: