Vue [Day2]

news2025/2/26 19:05:44

指令修饰符

在这里插入图片描述

v-model.trim

v-model.number

@事件名.stop @click.stop

@事件名.prevent

@keyup.enter

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<script src="../vue.js"></script>

<style>
    #app {
        margin: 50px 50px;
    }


    * {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .head {
        width: 243px;
        /* background-color: #584949; */
    }

    input {
        height: 30px;
        vertical-align: middle;
    }

    .head button {
        height: 30px;
    }

    .body li {
        width: 234px;
        height: 50px;
        display: flex;
        line-height: 50px;
        /* justify-content: space-between; */
        background-color: #de8282;
        border-bottom: black solid 2px;
    }

    .body li .content {
        flex: 1;

    }

    .body li button {
        height: 50%;
        align-self: center;
        display: none;
    }

    .body li:hover button {
        display: block;
        width: 20px;

    }

    .footer {
        width: 234px;
        display: flex;
        justify-content: space-between;
    }
</style>

<body>
    <!-- 需求:
   
    6.优化:除了点击按钮添加事项,在输入框回车,也可以完成添加
    -->


    <div id="app">
        <h1>小黑记事本</h1>
        <div class="head">


            <!-- 按键(回车)按下,出发add事件,和button的事件一样 -->
            <input @keyup.enter="add" v-model="todoName" type="text" placeholder="请输入待办事项">
            <button @click="add">添加任务</button>
        </div>
        <section class="body">
            <ul>
                <li v-for="(item,index) in todoList" :key="item.id">
                    <span>{{index+1}}</span>
                    <span class="content">{{item.name}}</span>
                    <button @click="del(item.id)">×</button>
                </li>


            </ul>
        </section>

        <div v-show="todoList.length>0" class="footer">
            <span>合计:<strong>{{todoList.length}}</strong></span>
            <button @click="clear()">清空任务</button>

        </div>
    </div>
</body>
<script>
    const app = new Vue({
        el: '#app',
        data: {
            todoName: '',
            todoList: [
                { id: 1, name: '吃水果' },
                { id: 2, name: '喝酸奶' }
            ]
        },
        methods: {
            del(tt) {
                this.todoList = this.todoList.filter(item => item.id != tt)
            },
            add() {
                if (this.todoName.trim() == '') {
                    alert('请输入内容')
                    return
                }

                this.todoList.unshift({
                    id: +new Date(),
                    name: this.todoName
                })
                this.todoName = ''
            },

            clear() {
                this.todoList = []
            }
        }

    })
</script>

</html>

v-bind基础 (回顾Day1

在这里插入图片描述

v-bind进阶

v-bind对于样式控制的增强 —— 操作class

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<script src="../vue.js"></script>
<style>
    .box {
        width: 100px;
        height: 100px;
        border: 2px solid black;
    }

    .pink {
        background-color: pink;
    }

    .big {
        width: 300px;
        height: 300px;
    }
</style>

<body>
    <div id="app">
        <div class="box" :class="{pink:true,big:true}">Hello</div>
        <div class="box" :class="['pink','big']">Hello</div>

    </div>
</body>
<script>
    const app = new Vue({
        el: '#app',
        data: {

        },
        method: {

        }
    })
</script>

</html>

[案例]——京东秒杀

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<script src="../vue.js"></script>
<link rel="stylesheet" href="../base.css">
<style>
    ul {
        display: flex;
        border-bottom: rgb(245, 12, 12) 2px solid;
    }

    li a {
        display: block;
        width: 70px;
        height: 30px;
        line-height: 30px;
        text-align: center;
    }

    .mouseover_active {
        background-color: rgba(247, 101, 101, 0.874);
    }

    .active {
        background-color: red;
    }
</style>

<body>
    <div id="app">
        <ul>
            <!--                                              @mouseover -->
            <li v-for="(item , index) in list" :key="item.id" @mouseover="activeIndex2=index"
                @click="activeIndex1=index">
                <a :class="{mouseover_active:index==activeIndex2,active:index==activeIndex1 }"
                    href="#">{{item.name}}</a>

            </li>
        </ul>
    </div>
</body>
<script>
    const app = new Vue({
        el: '#app',
        data: {
            activeIndex2: 0,
            activeIndex1: 0,

            list: [
                { id: 1, name: '京东秒杀' },
                { id: 2, name: '每日特价' },
                { id: 3, name: '品类秒杀' },
            ]
        },
        method: {

        }
    })
</script>

</html>

v-bind 对于样式控制的增强——style操作

在这里插入图片描述

[案例]—— 进度条

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<script src="../vue.js"></script>
<link rel="stylesheet" href="../base.css">
<style>
    #app {
        margin: 10px;
    }

    .progress {
        width: 300px;
        height: 40px;
        margin-bottom: 40px;
        background-color: #cdf92c;
        border-radius: 25px;
        padding: 5px;
    }

    .inner {
        background-color: #0df6c7;
        border-radius: 25px;
        height: 30px;
        /* width: 20%; */
    }

    .low {
        background-color: #92ee61;

    }

    .high {
        background-color: rgb(141, 179, 216);
    }

    .over {
        background-color: rgb(0, 128, 255);
    }

    .inner span {
        width: 100%;
        text-align: right;
        display: block;
        line-height: 90px;
    }
</style>

<body>
    <div id="app">
        <div class="progress">
            <!-- 在这里面num  不用加{{}}    并且{}里面 是js对象  ,所以要遵守驼峰命名法 也就是 background-color 要变成 backgroundColor-->
            <div class="inner" :class="{low:num<50,high:num>70,over:num==100}" :style="{width:num+'%'}">

                <span>{{num}}%</span>
            </div>

        </div>
        <button @click="num=25">设置25%</button>
        <button @click="num=50">设置50%</button>
        <button @click="num=75">设置75%</button>
        <button @click="num=100">设置100%</button>
    </div>
</body>
<script>
    const app = new Vue({
        el: '#app',
        data: {
            num: 10
        },
        method: {

        }
    })
</script>

</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/829124.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据泄露的平均成本创历史新高

IBM Security 发布了年度数据泄露成本报告&#xff0c;显示数据泄露的全球平均成本在 2023 年达到 445 万美元&#xff0c;创下该报告的历史新高&#xff0c;并且比过去 3 年增加了 15%。 检测和升级成本在同一时间段内跃升了 42%&#xff0c;占违规成本的最高部分&#xff0c…

促科技创新:高德数据优化篇之OceanBase最佳实践

本文作者&#xff1a; 振飞&#xff08;高德地图总裁&#xff09; 炳蔚&#xff08;高德技术服务平台负责人&#xff09; 福辰&#xff08;高德服务端架构师&#xff09; 背景 高德成立于2002年&#xff0c;是中国领先的移动数字地图、导航及实时交通信息服务提供商&#xff0c…

Ctfshow web入门 JWT篇 web345-web350 详细题解 全

CTFshow JWT web345 先看题目&#xff0c;提示admin。 抓个包看看看。 好吧我不装了&#xff0c;其实我知道是JWT。直接开做。 在jwt.io转换后&#xff0c;发现不存在第三部分的签证&#xff0c;也就不需要知道密钥。 全称是JSON Web Token。 通俗地说&#xff0c;JWT的本质…

通讯协议030——全网独有的OPC HDA知识一之基本概念(一)

本文简单介绍OPC HDA规范的基本概念&#xff0c;更多通信资源请登录网信智汇(wangxinzhihui)。 目前&#xff0c;大多数历史数据系统都使用自己的专有接口对外提供数据服务&#xff0c;不能与任何其他系统互操作。OPC HDA规范旨在提供历史数据访问的标准接口&#xff0c;促进用…

2023年信息系统项目管理师-学习计划安排

1. 关注信管网&#xff1a; 信管网 - 考试专业网站&#xff01; (cnitpm.com) 2023年下半年信息系统项目管理师报名时间将于8月14日开始&#xff0c;各地报名时间不同&#xff0c;请考生注意查看当地报名时间&#xff0c;但报名官网入口是统一的&#xff0c;均在中国计算机技术…

如何评估DC电源模块的效率

BOSHIDA 如何评估DC电源模块的效率 BOSHIDA DC电源模块的效率是指输入电功率与输出电功率的比率&#xff0c;通常以百分比的形式表示。因为电源模块的效率和整个系统的运行时间、负载变化等因素有关&#xff0c;因此需要进行多种测试和评估来确定其真实效率。 以下是一些评估D…

500余名师生齐聚线下!智能汽车竞赛百度创意组东西部赛区圆满结束

“全国大学生智能汽车竞赛”是教育部倡导的大学生科技A类竞赛&#xff0c;中国高等教育学会将其列为含金量最高的大学生竞赛之一&#xff0c;为《全国普通高校大学生竞赛排行榜》榜单内赛事。飞桨共承办了百度完全模型组和百度智慧交通组两大赛道。其中&#xff0c;创意组赛事共…

springboot+vue学生宿舍寝室管理系统的设计与开发fyaa5--论文

金桂圆寝室管理系统主要包括管理员、宿管和喾三大部分。 管理员主要功能为&#xff1a;个人中心、学生管理、宿管管理、楼宇信息管理、宿舍信息管理、住宿信息管理、宿舍更换管理、退宿信息管理等功能。 宿管主要功能为&#xff1a;个人中心、宿舍信息管理、住宿信息管理、宿舍…

java+springboot+mysql企业邮件管理系统

项目介绍&#xff1a; 使用javaspringbootmysql开发的企业邮件管理系统&#xff0c;系统包含超级管理员、管理员、员工角色&#xff0c;功能如下&#xff1a; 超级管理员&#xff1a;管理员管理&#xff1b;员工管理&#xff1b;反馈管理&#xff1b;系统公告&#xff1b;个人…

【力扣每日一题】2023.8.3 删除注释

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 这道题属于模拟题&#xff0c;我们实际运用场景是使用正则表达式&#xff0c;并且我看评论区也有不少大佬也是用的正则&#xff0c;而我就…

如何解决电脑无声问题:排除故障的几种常见方法

大家好&#xff0c;今天我们来讨论一下处理电脑没有声音的故障。当你突然发现电脑静音无声时&#xff0c;需要逐步排除可能的问题&#xff0c;但总体而言&#xff0c;声音故障是相对容易解决的。接下来&#xff0c;我们将介绍一些排除电脑无声问题的方法。 第一步&#xff1a;…

【css】使用float实现水平导航栏

该实例使用float 浮动实现元素浮动在水平方向&#xff0c;从而实现水平导航栏效果。 overflow: hidden&#xff1a;当不给父级元素设置高度的时候&#xff0c;其内部元素浮动后会导致下面的元素顶上去&#xff0c;这是因为子元素浮动后&#xff0c;子元素脱离标准流&#xff0…

SpringBoot读取mysql

SpringBoot读取mysql 部署mysql创建SpringBoot工程增加mysql8依赖创建Service代码执行验证 部署mysql 部署mysql可以通过软件安装&#xff0c;也可以通过docker安装&#xff0c;具体的安装过程可以参考以前的一篇博文&#xff0c;这里不再重复。 《眼睛说&#xff1a;我会用do…

软考A计划-系统集成项目管理工程师-项目合同管理-下

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列点击跳转>蓝桥系列 &#x1f449;关于作者 专注于Android/Unity和各种游…

大模型时代下,算法工程师发展趋势及技术拓展

本文目录 写在前面的话一、人工智能算法工程师的每个阶段是怎么样的&#xff1f;阶段一&#xff1a;模式识别阶段&#xff08;1&#xff09;传统机器学习--支持向量机&#xff08;2&#xff09;传统机器学习--隐马尔可夫模型&#xff08;3&#xff09;新的开始&#xff01;--Al…

小鹏智驾一号位换帅,接棒者李力耘其人

作者 | 张祥威编辑 | 德新 8月2日&#xff0c;小鹏汽车自动驾驶副总裁吴新宙将离职的消息在业界刷屏。到晚间&#xff0c;何小鹏发文确认了这一消息。 接下来&#xff0c;何小鹏将亲自带领自动驾驶和研发团队&#xff0c;为在今年年内完成 CNGP覆盖 50 城的努力&#xff0c;并且…

WEB集群——http、tomcat

1. 简述静态网页和动态网页的区别。 2. 简述 Webl.0 和 Web2.0 的区别。 3. 安装tomcat8&#xff0c;配置服务启动脚本&#xff0c;部署jpress应用。 1. 简述静态网页和动态网页的区别。 1&#xff09;、静态网页 &#xff08;1&#xff09;、什么是静态网页 请求响应信息&…

一文说清楚支付架构

作者&#xff1a;陈斌 支付的技术架构是为了保障能够顺利处理支付请求而设计的结构体系。从系统的角度看&#xff0c;它包括了计算机系统的软件、硬件、网络和数据等。从参与的主体角度来看&#xff0c;它涉及交易的付款方、收款方、支付机构、银行、卡组织和金融监管机构等。要…

批量计算直角三角形两个直角边对应斜边的numpy.hypot()方法

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 给出多个三角形的两条直角边长度 批量计算出这些三角形的斜边长度 numpy.hypot() [太阳]选择题 以下代码的输出结果是? import numpy as np a np.array([3, 4, 30]) b np.array([4, 3, 40])…

第四章 数据库安全性

问题的提出 &#xff08;1&#xff09;数据库的一大特点是数据可以共享 &#xff08;2&#xff09;数据共享必然带来数据库的安全性问题 &#xff08;3&#xff09;数据库系统中的数据共享不能是无条件的共享 这就引发了数据库安全性问题 1.数据库安全性概述 数据库的安全性…