• vue todolist


    最近初学vue,做最简单的todolist

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8">
    		<title>todolist</title>
    		<style type="text/css">
    			#container{
    				 700px;
    				height: 100px;
    				padding: 40px;
    				margin: 0 auto;
    			}
    			li{
    				list-style: none;
    			}
    			.close-btn{
    				display: inline-block;
    				 20px;
    				height: 20px;
    				background: url('close.png') no-repeat;
    				cursor: pointer;
    			}
    			.finished{
    				text-decoration: line-through;
    			}
    		</style>
    	</head>
    	<body>
    		<div id="container">
    			<input type="text" v-model="newitem" @keyup.enter="addlistitem"/>
    			<div class="todo-list">
    				<ul>
    					<li v-for="(listitem,index) in list">
    						<input type="checkbox" v-model="listitem.isFinished" />
    						<span v-bind:class="{ finished: listitem.isFinished }" >{{ listitem.text }}</span>
    						<span class="close-btn" @click="deleteitem(index)"></span>
    					</li>
    				</ul>
    			</div>
    		</div>
    		
    		
    		<script src="https://cdn.jsdelivr.net/npm/vue"></script>
    		<script>
    			var app = new Vue({
    			  el: '#container',
    			  data: {
    			  	newitem:'',
    			    list:[]
    			  },
    			  watch: {
    			    // 如果 `list`数据 发生改变,这个函数就会运行
    			    list: {
    			    	handler:function () {
    				    	this.saveTolocal(this.list)
    				    },
    				    // 深度观察,当对象里的属性发生改变时,也会触发watch。点击checkbox需要deep: true,否则watch不会起作用。
    				    deep: true 
    			    }
    			  },
    			  methods:{
    			  	// 添加项目
    			  	addlistitem:function(){
    			  		if(this.newitem != ''){
    			  			this.list.push({'text':this.newitem,'isFinished':false})
    			  			this.newitem = ''
    			  		}
    			  	},
    			  	// 删除项目
    			  	deleteitem:function(curIndex){
    			  		this.list.splice(curIndex,1)
    			  	},
    			  	// 存入localStorage
    			  	saveTolocal:function(data){
    			  		localStorage.setItem('tododata',JSON.stringify(data))
    			  	}
    			  }
    			});
    			
    			// 读取localStorage
    			if(!!localStorage.getItem('tododata')){
    				app.list = JSON.parse(localStorage.getItem('tododata'))
    			}
    			
    		</script>
    		
    		
    	</body>
    </html>
    

      

  • 相关阅读:
    【算法•日更•第三十四期】最大流算法
    【算法•日更•第三十三期】网络流基础知识(最大流)
    【原】Java学习笔记017
    【原】Java学习笔记016
    【原】Java学习笔记015
    【原】Java学习笔记014
    【原】Java学习笔记013
    【原】Java学习笔记012
    【原】Java学习笔记011
    【原】Java学习笔记010
  • 原文地址:https://www.cnblogs.com/webcome/p/8391051.html
Copyright © 2020-2023  润新知