vue todo List 小案例

<!DOCTYPE html>
<html>
<head>
	<title></title>
	<style type="text/css">
		.donesty{
          text-decoration: line-through;
          color: gray;
		}
		#app{
			background-color: 	#F8F8FF ;
			width: 500px;
		    border: 1px solid gray;
		    margin: 50px auto;
		    padding:20px 50px 30px 50px;

		}
	</style>
</head>
<div id="app">
	<h1>Todo List</h1>
	<p>{{todo.filter(function(item){return item.status===false}).length}} of {{todo.length}} remaining[<a href="#" v-on:click="clearall">archive</a>]</p>
	<div v-for="(item,index) in todo">
		<input type="checkbox" name="" v-model="item.status" > <!---->
		<span v-bind:class="{donesty:item.status}">{{item.wantdo}}</span>
		<input type="button" value="x" v-on:click="jianone(index)" name="">
	</div>
	<div>
		<input type="text" v-model="addst" name="" v-on:keyup.enter="addone">
		<input type="button" value="Add" v-on:click="addone" name="">
	</div>
</div>
<body>
	<script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script>
<script type="text/javascript">

var app=new Vue({
	el:"#app",
	data:{
		todo:[{id:1,wantdo:'吃饭',status:false},
            	{id:2,wantdo:'睡觉',status:false},
             	{id:3,wantdo:'打豆豆',status:false}	],
		addst:''
	},
	methods:{
		addone:function(){
			if(this.addst.length){
			   this.todo.push({ id:this.todo.length?this.todo[this.todo.length-1].id+1:1,wantdo:this.addst.trim(),status:false })
               this.addst=""
			}
       
		},
		jianone:function(index){
               this.todo.splice(index,1)
		},
		clearall:function(){
			this.todo.splice(0)
		}
	}
})
</script>
</body>
</html>


http://todomvc.com/examples/vue/    有时间实现这个案例
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值