当前位置: 首页 > article >正文

【Vue3入门2】02-记事本案例

本文主要介绍记事本案例,具体实现记事本的显示、添加、删除、清空功能。

运用到了前面所介绍的各种vue操作

<body>
    <div id="app">
        <!-- 文本框使用双向绑定,当文本框内容更新,data.content也随之更新 -->
        <input type="text" v-model="data.content">

        <!-- 1.定义button按钮,并为其添加add方法 转2写add方法 -->
        <button @click="add">添加</button>

        <!-- 5.将修改后的list显示到页面上 -->
        <ul>
            <!-- 6.为li添加v-for循环li -->
            <!-- 当点击添加时 就把添加到数组的内容同样显示在页面上 -->
            <li v-for="(value,index) in data.list">
                {{ value }}
                <!-- 7.接下来实现删除效果,在每个li旁边显示删除按钮,删除需要唯一的标识index -->
                <button @click="del(index)">删除</button>
            </li>
        </ul>

        <!-- 11.获取记事本中记录的数量 -->
        {{ data.list.length }}

        <!-- 12.最后设置清空记事本的功能,转到13编写clear方法 -->
        <button @click="clear">清空</button>
    </div>
    <script type="module">
        // 模块化开发
        import { createApp, reactive } from './vue.esm-browser.js'
        createApp({
            setup() {  // reactive创建响应式数据
                const data = reactive({
                    content: "www.baidu.com",  // 内容
                    list: ["zzz", "baidu.com"],  // 列表
                })
                // 2.add方法 将文本框的内容添加到list数组内
                const add = () => {
                    // 3.将文本框内容push到数组内
                    data.list.push(data.content)
                    console.log(data.list);
                }
                // 8.del方法 将文本框的内容添加到list数组内
                const del = (index) => {
                    // 9.splice(删除的起始索引,删除的数量)
                    data.list.splice(index,1)
                    console.log(data.list)
                }
                // 13.clear方法
                const clear = () => {
                    // 14.只需要将list设置为空数组
                    data.list = []
                }
                return {
                    data,
                    // 4.返回add方法
                    add,
                    // 10.返回del
                    del,
                    // 15.返回clear
                    clear
                }
            }
        }).mount("#app")
    </script>
</body>

以上为记事本案例。


http://www.kler.cn/a/598464.html

相关文章:

  • ISIS-1 ISIS概述
  • 基于ISO 26262的汽车芯片认证流程解读
  • 汽车芯片成本控制:挑战、策略与未来趋势
  • 如何用AI轻松制作PPT,让演示更智能!
  • 开发语言漫谈-groovy
  • 论文阅读:2023 arxiv Multiscale Positive-Unlabeled Detection of AI-Generated Texts
  • 批量在多个 PPT 文档的指定位置插入页,插入首页插入尾页
  • 如何使用SQL进行多表联合查询(SQLⅰte举例)
  • 0x16 Trie
  • 知道自己鼠标在某个竖直平面上的经纬度信息在这个竖直的平面上的实时坐标
  • Unity-VR中使用手柄点击UI
  • Deepseek浪潮下,汽车芯片开启“大变局”,谁将领跑?
  • 【算法】十大排序算法(含时间复杂度、核心思想)
  • 从入门到精通【MySQL】 CRUD
  • 使用LLaMA Factory微调导出模型,并用ollama运行,用open webui使用该模型
  • HTB 笔记 | XSS 篡改攻击学习指南
  • Entity Framework框架
  • SpringCloud-consul
  • 【拒绝算法PUA】LeetCode 2116. 判断一个括号字符串是否有效
  • 如何通过less在vue2中达到切换皮肤的目的