vue小案例—记事本

这个博客展示了如何使用Vue.js创建一个简单的记事本应用。应用包括一个输入框用于添加任务,一个列表显示任务,以及删除和清空任务的功能。CSS用于实现页面布局,如Flexbox布局,而JavaScript则处理用户输入和任务的增删操作。通过Vue的数据绑定和方法,实现了动态交互效果。
摘要由CSDN通过智能技术生成

在这里插入图片描述
css部分

 *{
            margin: 0;
            padding: 0;
        }
        .book{
            display: flex;
            justify-content: center;
            align-content: center;

        }
        #todoapp{
            width: 300px;
            border: 1px solid #000;
            
        }
        .new-todo{
            width: 298px;
            height: 35px;
        }
        li{
            list-style: none;
            margin-bottom: 10px;
        }
        button{
            background-color: #ffffff; /* Green */
            border: none;
            color: #6f6f6f;
            text-align: center;
            text-decoration: none;
            cursor: pointer;
        }
        .index{
            font-size: 14px;
            margin-right: 20px;
        }
        label{
            color: gray;
        }
        .clear-completed{
            float: right;
        }
        strong{
            margin-right: 20px;
        }
  

html部分

<div class="book">
    <section id="todoapp">
        <!--输入框-->
        <header class="header">
            <h1>记事本</h1>
            <input v-model="inputValue" @keyup.enter="add" autofocus="autofocus"
                   autocomplete="off" placeholder="请输入任务"  class="new-todo"/>
        </header>
        <!--列表区域-->
        <section class="main">
            <ul class="todo-list">
                <li class="todo" v-for="(item,index) in list">
                    <div class="view">
                        <span class="index">{{index+1}}.</span>
                        <label>{{item}}</label>
                        <button class="destroy" @click="remove(index)">x</button>
                    </div>
                </li>
            </ul>
        </section>
        <!--统计和清除-->
        <footer class="footer" v-show="list.length!=0">
		<span class="todo-count" v-if="list.length!=0">
			<strong>{{list.length}}</strong>items left
		</span>
            <button v-show="list.length!=0" class="clear-completed" @click="clear" >
                Clear</button>
        </footer>
    </section>
</div>

js部分

 var app=new Vue({
        el:"#todoapp",
        data:{
            list:["我想你!","我喜欢你","我爱你?"],
            inputValue:"520"
        },
        methods:{
            add:function(){
                this.list.push(this.inputValue);
            },
            remove:function(index){
                console.log("删除");
                console.log(index);
                this.list.splice(index,1);
            },
            clear:function(){
                this.list=[];
            }
        },
    })
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值