Vue学习笔记_Day02

文章目录

  • 1,指令修饰符
  • 2,样式控制
  • 3,v-model进阶
  • 4,计算属性
  • 5,监视器
  • 6,生命周期

1,指令修饰符

跟在指令后面,具有特殊的功能。

事件修饰符:
.enter:只有enter键能触发事件。
.stop:阻止事件冒泡。
.prevent:阻止默认行为。

v-model修饰符:
.trim:自动去除首尾的空格。
.number:自动转换成数字。

比如说:

阻止a标签的默认跳转行为。

<a href="" @click.prevent="">链接</a>

按回车键清空。

<input type="text" v-model="msg" @keyup.enter="msg=''" />

data: {
    msg: ""
}

2,样式控制

class写成对象。键为类名,值为真假。
为真则具有该类名,为假则没有。

<div :class="{abc:msg}">你好,世界!</div>

data: {
    msg: true
}

style写成对象。属性名小驼峰。

<div :style="{color:msg}">你好,世界!</div>

data: {
    msg: 'red'
}

3,v-model进阶

复选框,值为真假。

<input type="checkbox" v-model="msg">

data: {
    msg: true
}

单选框,
name将多个单选框分为一组。
value作为当前单选框的值。

值为value中的一个。

<input type="radio" name="gender" value='1' v-model=msg />
<input type="radio" name="gender" value='2' v-model=msg />

data: {
    msg: '1'
}

下拉框,
值为value中的一个。

<select v-model="msg">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
</select>

data: {
    msg: '1'
}

4,计算属性

由data计算出来的属性,称为计算属性。

在computed里面声明。
写成函数,返回值就是计算属性的值。

比如说:两数之和。

<input type="text" v-model.number="a"><br />
<input type="text" v-model.number="b"><br />
{{a}}<br />
{{b}}<br />
{{abc}}

const vm = new Vue({
    el: "#app",
    data: {
        a: 0,
        b: 0
    },
    computed: {
        abc() {
            return this.a + this.b
        }
    }
})

还有一种写法。能够读取和修改计算属性。

<input type="text" v-model.number="a"><br />
<input type="text" v-model.number="b"><br />
{{a}}<br />
{{b}}<br />
{{abc}}
<button @click="abc=''">清空</button>

const vm = new Vue({
    el: "#app",
    data: {
        a: 0,
        b: 0
    },
    computed: {
        abc: {
            get() {
                return this.a + this.b
            }, 
            set(v) {
                this.a = 0
                this.b = 0
            }
        }
    }
})

5,监视器

用于当数据变化时,执行某些操作。

{{a}}
<button @click="a++">+</button>

const vm = new Vue({
    el: "#app",
    data: {
        a: 0
    },
    watch: {
        a(newV, oldV) {
            console.log(newV, oldV);
        }
    }
})

如果要监视对象的属性,加引号即可。

{{a.b}}
<button @click="a.b++">+</button>

const vm = new Vue({
    el: "#app",
    data: {
        a: {
            b: 0
        }
    },
    watch: {
        'a.b'(newV, oldV) {
            console.log(newV, oldV);
        }
    }
})

如果要监视对象的所有属性,加配置项。

{{a.b}}
<button @click="a.b++">+</button>
{{a.c}}
<button @click="a.c++">+</button>

const vm = new Vue({
    el: "#app",
    data: {
        a: {
            b: 0,
            c: 0
        }
    },
    watch: {
        a: {
            deep: true,
            handler(newV, oldV) {
                console.log(newV.b, newV.c);
            }
        }
    }
})

一进入页面,可以选择立即执行一次。

watch: {
    a: {
        deep: true,
        immediate: true,
        handler(newV, oldV) {
            console.log(newV.b, newV.c);
        }
    }
}

6,生命周期

四个阶段:创建,挂载,更新,销毁。
八个函数。
在这里插入图片描述

{{a}}
<button @click="a++">+</button>

const vm = new Vue({
    el: "#app",
    data: {
        a: 0
    },
    beforeCreate() {
        console.log(1);
    },
    created() {
        console.log(2);
    },
    beforeMount() {
        console.log(3);
    },
    mounted() {
        console.log(4);
    },
    beforeUpdate() {
        console.log(5);
    },
    updated() {
        console.log(6);
    },
    beforeDestroy() {
        console.log(7);
    },
    destroyed() {
        console.log(8);
    }
})

手动卸载实例的方法:控制台输入代码。

vm.$destroy()

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C#异步编程是怎么回事

首先以一个例子开始 我说明一下这个例子。 这是一个演示异步编程的例子。 输入job [name],在一个同步的Main方法中,以一发即忘的方式调用异步方法StartJob()。输入time,调用同步方法PrintCurrentTime()输出时间。输出都带上线程ID,便于观察。 可以看到,主线程不会阻塞。主…

Django框架中Ajax GET与POST请求的实战应用

系列文章目录 以下几篇侧重点为JavaScript内容0.0 JavaScript入门宝典&#xff1a;核心知识全攻略&#xff08;上&#xff09;JavaScript入门宝典&#xff1a;核心知识全攻略&#xff08;下&#xff09;Django框架中Ajax GET与POST请求的实战应用VSCode调试揭秘&#xff1a;L…

@BeforeAll 和 @AfterAll 必须是 static 的原因

BeforeAll 和 AfterAll 必须是 static 的原因 执行时机&#xff1a; BeforeAll 方法在所有测试方法之前运行。AfterAll 方法在所有测试方法之后运行。 实例化前/后的执行&#xff1a; 因为 BeforeAll 是在所有测试方法执行之前运行的&#xff0c;所以它在任何一个测试实例创建…

拉格朗日乘子将不等式约束转化为等式约束例子

拉格朗日乘子将不等式约束转化为等式约束例子 在优化问题中,常常需要将不等式约束转化为等式约束。使用拉格朗日乘子法,可以通过引入松弛变量将不等式约束转换为等式约束,然后构造拉格朗日函数进行求解。 拉格朗日乘子法简介 拉格朗日乘子法是求解带约束优化问题的一种方…

Rust-02-变量与可变性

在Rust中&#xff0c;变量和可变性是两个重要的概念。 变量&#xff1a;变量是用于存储数据的标识符。在Rust中&#xff0c;变量需要声明其类型&#xff0c;例如&#xff1a; let x: i32 5; // 声明一个名为x的变量&#xff0c;类型为i32&#xff08;整数&#xff09;&#…

jasypt配置文件密码加密解码

1. 需求讲解 对配置文件的组件密码加密,比如数据库redis等密码加密 2. 开发 2.1 依赖引入 <!-- jasypt 加解密 --><dependency><groupId>com.github.ulisesbocchio</groupId><artifactId>jasypt-spring-boot-starter</artifactId><v…

【C语言】动态内存经典笔试题(下卷)

前言 如果说动态内存是C语言给我们的一个工具&#xff0c;那么只有掌握了工具的特点我们才能更好地使用。 紧随上卷&#xff0c;我们再来看看动态内存另外两道经典的笔试题。 &#xff08;建议没看过上卷的朋友可以先看完上卷再回来&#xff1a;【C语言】动态内存经典笔试题…

Java面试八股之什么是自动装箱和自动拆箱

什么是自动装箱和自动拆箱 在Java中&#xff0c;自动装箱&#xff08;Autoboxing&#xff09;和自动拆箱&#xff08;Auto-unboxing&#xff09;是两个与基本数据类型和它们对应的包装类之间的转换相关的特性。这两个概念自Java 5&#xff08;也称为Java SE 5或JDK 5&#xff…

牛客NC18 顺时针旋转矩阵【中等 数学 Java/Go/PHP/C++】

题目 题目链接&#xff1a; https://www.nowcoder.com/practice/2e95333fbdd4451395066957e24909cc https://www.lintcode.com/problem/161/ 思路 Java代码 import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定&#xff0c;请勿修改&#…

C#操作MySQL从入门到精通(16)——使用子查询

前言: 我们在查询数据的过程中有时候查询的数据不是从数据库中来的,而是从另一个查询的结果来的,这时候就需要使用子查询,本文使用的测试数据如下: 1、子查询 下面的代码就是先查询地址是安徽和广西的学生年龄,然后获取年龄对应的姓名 private void button__SubQuery…

像素蛋糕Photoshop颜色导出不一致问题分析与解决

问题点&#xff1a;发现用像素蛋糕修完图明天应该为最右边图片显示 模特应该是白皙的&#xff0c;但是导出图片无论是否勾选SRGB都表现的为种间图片颜色一样 饱和度巨高。 问题分析&#xff1a;那这一定是颜色配置文件出现问题&#xff0c;找到客服表示可以去PS打开看是否与预…

彼长技以助己(5)量级思维

彼长技以助己&#xff08;5&#xff09;量级思维 数字感性与理性测试 我先讲一个可能发生在我们身边的故事&#xff1a;一个程序员在一个项目开发中使用了考虑到目前业务量少&#xff0c;快速写了一个冒泡排序&#xff0c;结果被经理批评了&#xff0c;然后他跑来找你诉苦&am…

Application Load Balancer-ALB

Application Load Balancer-ALB 什么是ALB开通ALB服务实现IPv4服务的负载均衡创建ALB实例创建服务器组添加后端服务器配置监听设置域名解析&#xff08;可选&#xff09;释放ALB实例 什么是ALB 在介绍ALB之前首先介绍一下负载均衡SLB&#xff0c;可以说SLB是负载均衡家族之首 …

CentOS7 配置Nginx域名HTTPS

Configuring Nginx with HTTPS on CentOS 7 involves similar steps to the ones for Ubuntu, but with some variations in package management and service control. Here’s a step-by-step guide for CentOS 7: Prerequisites Domain Name: “www.xxx.com”Nginx Install…

目录穿越漏洞CVE-2018-7171复现 又学到一招小技巧!!!!

还是半夜睡不着&#xff0c;打开靶机开始操作。今天看了文件下载和目录穿越漏洞想结合以及防御方法。半夜来进行操作一波。复现一下漏洞&#xff0c;这个网上的文章页比较的少&#xff01;&#xff01;&#xff01; 开始操作起来&#xff01;&#xff01;&#xff01; 进入到页…

【初识Objective-C】

Objective-C学习 什么是OCOC的特性OC跑的第一个程序helloworld OC的一些基础知识标识符OC关键字数据类型字符型c字符串为什么NSString类型定义时前面要加和普通的c对象有什么区别 一些基础知识if语句switch语句三种循坏语句for循环&#xff1a;用于固定次数的循环while循环&…

小成代码路的错误2

文章目录 1.继承中子类和父类之间的隐藏&#xff1b;只要函数名字相同就会出现隐藏&#xff1b;这里和函数的参数无关&#xff1b;继承的析构函数会自动先调用子类的析构函数再调用父类的析构函数&#xff1b;不需要写仍和的父类的析构函数&#xff1b;继承中的静态成员在父类中…

SpringBoot3学习总结

一.SpringBoot3介绍 (一)主要目标 SpringBoot的主要目标是&#xff1a; 为所有 Spring 开发提供更快速、可广泛访问的入门体验。 开箱即用&#xff0c;设置合理的默认值&#xff0c;但是也可以根据需求进行适当的调整 提供一系列大型项目通用的非功能性程序&#xff08;如…

第二届黄河流域团队赛个人wp

个人wp web 两个题都几乎是网上的原题&#xff0c;不想多说了&#xff0c;放个链接&#xff0c;重点记录一下自己第一次遇到的misc 冰蝎流量分析 web1 https://blog.csdn.net/qq_51768842/article/details/125153850 web2 https://blog.csdn.net/m0_73512445/article/detai…

当我拿到百度文心智能体大赛top1后,我又开发了...

目录 一、写在前面 二、代码助手 三、关于智能体 四、写在后面 一、写在前面 在不久前结束的文心智能体大赛&#xff08;第一期&#xff09;中&#xff0c;我有幸凭借一款名为恋爱助手的智能体斩获了大赛的桂冠。这个成绩&#xff0c;既是对我努力的认可&#xff0c;也是对…