为了账号安全,请及时绑定邮箱和手机立即绑定

【学习打卡】第4天 使用vue3实现todolist

标签:
Vue.js

课程名称:毕业一课通,从开题到答辩高效完成
课程章节:第3章 3-5 使用vue3实现todo list
主讲老师:然冬

课程内容
vue3实现todolist
vue3的基本写法
vue3和vue2的区别

课程收货
初步了解到怎么通过vue3实现一个小功能
1.vue2.0中是直接创建了一个vue实例
2.vue3.0中按需导出了一个createApp (ceateApp做了什么)
3.vue3中的app单文件不再强制要求必须有根元素 也就是说 在vue2.0中必须要有一个根元素,在vue3中没这个要求

<div id="app">
        <input 
            type="text" 
            class="input"
            v-model="inputValue"
            @keyup.enter="add"
        >       
        <p>列表:</p>
        <ul>
            <li v-for="(item,index) in list"
                @click="item.done =!item.done"
                :class="{
                    done:item.done,
                }"
                @contextmenu="remove(index,$event)"
            >
                {{ item.text }}
            </li>
        </ul>
    </div>

    <script class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="https://cdn.bootcdn.net/ajax/libs/vue/3.2.37/vue.global.js"></script>
    <script>
        const ref = Vue.ref;
        const Todo = {
            setup(){
                const list = ref([]);
                const inputValue = ref('');

                const add = () =>{
                    list.value.push({
                        text:inputValue.value,
                        done:false,
                    })
                    inputValue.value = ""
                }

                const remove = (index,e) =>{
                    e.preventDefault()
                    list.value.splice(index,1)
                };

                return {
                    add,
                    remove,

                    list,
                    inputValue,
                }
            },
        };

        Vue.createApp(Todo).mount('#app')

    </script>

    <style>
        li{
            cursor: pointer;
        }
        .done{
            text-decoration: line-through;
            color: #eee;
        }
    </style>

图片描述

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消