<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>todolist</title>
<script src="./src/assets/js/vue.js"></script>
<style>
.done{/*待办事项完成与否的样式*/
text-decoration: line-through;/*加入横穿文字的直线*/
background-color: red;
}
</style>
</head>
<body>
<h2>待办事项</h2>
<div id="app">
<input type="text" v-model="content"/><button @click="addTask">添加任务</button><!--代办事项的输入框-->
<ul>
<li v-for="task,index in list" :key="index"><!--利用v-for完成待办事项的循环展示-->
<span :class="{'done':task.isDone}">{{task.name}}<!--利用span把代办事项的内容包裹起来,样式展示利用:class来实现-->
</span><button @click="maskDone(task)">标记已完成</button><!--添加标记已完成的按钮-->
<button @click="deleteTask(index)">删除待办事项</button><!--添加删除代办事项的按钮-->
</li>
</ul>
</div>
<script>
var vm = new Vue({
el:"#app",
data:{
list:[]
},
methods:{
addTask(){
if(this.content!==''||this.content.length!==0){
let task = {/*创建一个对象,并存入list数组*/
'name':this.content,
'isDone':false
}
this.list.push(task);
this.content = ''/*最后把输入框的内容置为空*/
}
},
deleteTask(index){
this.list.splice(index,1)
},
maskDone(task){
task.isDone = true
}
}
})
</script>
</body>
</html>
vue.js实现简单的待办事项小demo
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。