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

VUE_学习笔记

一、 xx

二、模板语法

1.模板语法之差值语法 :{{ }}

主要研究:{{ 这里可以写什么}}

  1. 在data中声明的变量、函数等都可以。
  2. 常量
  3. 只要是合法的javascript表达式,都可以。
  4. 模板表达式都被放在沙盒中,只能访问全局变量的一个白名单,如Math和Date等。(见Vue官网)

2.模板语法之指令语法: v-???

指令语法:

  1. 什么事指令?有什么用?
    指令的职责是:当表达式的值改变是,将其产生的连带影响,响应式的作用于DOM。
  2. Vue框架中的所有指令的名字都已“v-”开始。
  3. 差值是写在标签体当中的,那么指令写在哪里呢?
    Vue框架中所有的指令都是以html标签的属性形式存在的,
    例如:<span 指令是写在这里的>{{这是插值语法的位置}}< /span >
    注意:虽然指令是写在标签的属性位置上,但是这个指令浏览器是无法直接看懂的;
    是需要先让Vue框架进行编译的,编译之后的内容浏览器是可以看懂的。
  4. 指令的语法规则:
    指令的一个完成的语法格式:
    <HTML标签 v-指令名:参数=“javascript表达式”></HTML标签>
    表达式:之前在插值语法中{{这里可以写什么}},那么指令中的表达式就可以写什么。实际上是一样的 。
    但是需要注意的是:在指令中的表达式位置不能在外层再添加一个{{}}
    不是所有的指令都有参数和表达式:
    有的指令,不需要参数,也不需要表达式,例如v-once
    有的指令,不需要参数,但是需要表达式,例如v-if="表达式"
    有的指令,既需要参数,又需要表达式,例如v-bind:参数="表达式"
  5. v-once 指令
    作用: 只渲染元素一次。随后的重新渲染,元素及其所有的子节点将被视为静态内容并跳过。这可以用于优化更新性能。
  6. v-if=“表达式” 指令
    作用:表达式的执行结果需要是一个布尔类型的数据:true或false
    true:这个指令所在的标签,会被渲染到浏览器当中。
    false:这个指令所在的标签,不会被渲染到浏览器当中。
  7. v-bind 指令
    它是一个负责动态绑定的指令。
    v-bind 指令详解:
    1.这个指令是干啥的?
    它可以让HTML标签的某个属性的值阐释动态的效果。
    2.v-bind指令的语法格式:
    <HTML标签 v-bind:参数=“表达式”></HTML标签>
    3.v-bind指令的编译原理:
    编译前:<HTML标签 v-bind:参数=“表达式”></HTML标签>
    编译后:<HTML标签 参数=“表达式的执行结果”></HTML标签>
    注意两项:
    第一:在编译的时候v-bind后面的“参数名”会被编译为HTML标签的“属性名”。
    第二:表达式会关联data,当data发声改变之后,表达式的执行结果就会发声变化。
    所以,连带的就会产生动态效果。
    4.v-bind因为很常用,所以Vue框架对该指令提供了一种简写方式:
    只是针对v-bind提供了一下简写方式:
    < img :src=“imgPath”>
    5.什么时候使用插值语法?设么时候使用指令?
    凡是标签体当中的内容要想动态,需要使用插值语法;
    只要想HTML标签的属性动态,需要使用指令语法。
  8. v-model 指令
    v-bind和v-model的区别和联系
    1. v-bind和v-model这两个指令都可以完成数据绑定
    2. b-bind是单向数据绑定。
    3. v-model是上香数据绑定
    4. v-bind可以使用在任何HTML标签汇总,v-model只能使用在表单元素上,
      例如:input,select、textarea标签等
      为什么v-model的使用会有这个限制呢?
      因为表单类的元素才能给用户提供交互输入的界面。
    5. v-bind和v-model都有简写方式:
      v-bind简写方式:
      v-bind:参数=“表达式” 简写为: :参数=“表达式”
      b-model简写方式:
      v-model:value=“表达式” 简写为 v-model=“表达式”

三、MVVM分层思想

  1. MVVM是什么?
    M:Model(模型/数据)
    V:View(视图)
    VM:ViewModel(视图模型):VM是MVVM中的核心部门。
    MVVM是目前前端开发领域中非常流行的开发思想(一种架构模式)。
    目前前端的大部分主流框架都实现了这个MVVM思想,例如Vue,React等。
  2. Vue框架遵循MVVM吗?
    虽然没有完全遵循MVVM模型,但是Vue的设计也受到了它的启发。
    Vue框架基本上也是符合MVVM思想的。
  3. MVVM模型当中倡导了Model和View进行了分离,为什么要分离?
    加入Model和View不分离,使用最原始的原生的javascript代码写项目,如果数据发生任意的改动,接下来我们需要编写大篇幅的操作DOM元素的JS代码。
    将Model和View分离之后,出现了一个VM核心,这个VM把所有的脏活累活给做了,也就是说,当Model发生改变之后,VM自动去更新View,当View放生改动之后,VM自动去更新Model。我们再也不需要不间歇操作DOM的JS代码了。开发效率提高了很多。

四、认识vm

  1. 通过Vue实例都可以访问哪些属性(通过vm都可以vm.什么)?
    Vue实力老钟的属性很多,有的以“”开始,有的以“”开始所有以“” 开始,有的以“_”开始 所有以“开始,有的以开始所有以”开始的属性,可以看做是公开的属性,这些属性是提供程序员使用的。
    所有以“_”开始的属性,可以看做是私有的属性,这些属性是Vue框架低层使用的。一般程序员很少使用。
    通过vm 也可以方位Vue实例对象的原型对象上的属性,例如:vm.$delete …

五、Object.defineProperty()

  1. 这个方法是ES5新增的 。
  2. 这个方法的作用是:给对象新增属性,或者设置对象原有的属性。
  3. 怎么用?
    Object.defineProperty(给那个对象新增属性,’ 新增的这个属性叫啥 ',{给新增的属性设置相关的配置项key:value对})
  4. 第三个参数时属性相关的 配置项,配置项都有哪些?每个配置项的左右是啥?
    value 配置项:给属性指定值
    writable 配置项:设置该属性的值是否可以被修改。true标识可以修改。false表示不能修改。
    getter方法 配置项: 不需要手动调用。当读取属性值的时候,getter方法被自动调用。
    getter方法的返回值非常重要,这个返回值就代表这个属性的它的值;
    setter方法 配置项: 不需要手动调用。当修改属性值的时候,setter方法被自动调用。
    setter方法上是有一个参数的,这个参数可以接受传过来的值。
    注意:当配置项当中有setter和setter的时候,value和writable配置项都不能存在。
    在这里插入图片描述

六、数据代理机制

  1. 什么是数据代理机制?
    通过方位代理对象的属性来简介访问目标对象的属性。
  2. 数据代理机制的实现需要依靠:Object。defineProperty()方法。

相关文章:

VUE_学习笔记

一、 xx 二、模板语法 1.模板语法之差值语法 &#xff1a;{{ }} 主要研究&#xff1a;{{ 这里可以写什么}} 在data中声明的变量、函数等都可以。常量只要是合法的javascript表达式&#xff0c;都可以。模板表达式都被放在沙盒中&#xff0c;只能访问全局变量的一个白名单&a…...

【分布式事务AT模式 SpringCloud集成Seata框架】分布式事务框架Seata详细讲解

前言 上篇文章我们讲述了如何启动seata的本地服务&#xff0c;并且注册到nacos使用&#xff0c;这篇文章将在SpringCloud中整合Seata框架 上篇文章传送门&#xff1a;https://blog.csdn.net/Syals/article/details/130102851?spm1001.2014.3001.5501 本篇主要内容&#xff…...

系统集成项目管理工程师软考第三章习题(每天更新)

第一章指路&#xff1a;系统集成项目管理工程师软考第一章习题&#xff08;已完结&#xff09;_程序猿幼苗的博客-CSDN博客 第二章指路&#xff1a;系统集成项目管理工程师软考第二章习题&#xff08;已完结&#xff09;_程序猿幼苗的博客-CSDN博客 第3章信息系统集成专业技术…...

FIFO的工作原理及其设计

1.简介 FIFO( First Input First Output)简单说就是指先进先出。FIFO存储器是一个先入先出的双口缓冲器&#xff0c;即第一个进入其内的数据第一个被移出&#xff0c;其中一个口是存储器的输入口&#xff0c;另一个口是存储器的输出口。 对于单片FIFO来说&#xff0c;主要有两种…...

「UG/NX」Block UI 通过浏览器选择文件File Selection with Browse

目录 控件说明界面效果公有属性对话框标题 DialogLabel(仅创建)控件灰显 Enable分组 Group(仅创建)控件显隐 Show控件标题 Label国籍文本 AllowInternationalTextInput(仅创建)显示密文 IsPassword(仅创建)本地化 Localize(仅创建)保存值 RetainValue属性界面代码实现…...

面试官:如何搭建Prometheus和Grafana对业务指标进行监控?

Prometheus和Grafana都是非常流行的开源监控工具&#xff0c;可以协同使用来实现对各种应用程序、系统、网络和服务器等的监视和分析。 下面对Prometheus和Grafana进行简要介绍&#xff1a; Prometheus Prometheus是一款开源、云原生的系统和服务监控工具&#xff0c;它采用p…...

SQL Server 创建登录账号、创建用户名并为数据库赋予db_owner权限

服务器级的固定角色及其权限 sysadminsysadmin 固定服务器角色成员可以在服务器执行任何操作serveradminserveradmin 固定服务器角色的成员可以更该服务器范围的配置选项和关闭服务器sercurityadmin sercurityadmin 固定服务器角色的成员管理登录名及其属性,他们可以grant、de…...

离散数学_第二章:基本结构:集合、函数、序列、求和和矩阵(1)

集合与函数2.1 集合 2.1.1 集合的基本概念 2.1.2 集合的表示方法 2.1.3 文氏图 2.1.4 证明集合相等 2.1.5 集合的大小 ——基 2.1.6 幂集 2.1.7 集族、指标集 2.1.8 笛卡尔积 2.1.9 容斥原理2.1 集合 2.1.1 集合的基本概念 定义1&#xff1a;集合 是不同对象的一个无序的聚…...

ChatGPT想干掉开发人员,做梦去吧

很多人都发现ChatGPT可以做一些代码相关的工作&#xff0c;不仅可以写一些基础的类似python、java、js的代码段&#xff0c;还可以做一定量的调优&#xff0c;于是就开始担忧起来&#xff0c;到哪天我的开发工作会不会被ChatGPT这个工具给取代了&#xff1f; 目录 1. ChatGPT…...

尚硅谷大数据技术Hadoop教程-笔记04【Hadoop-MapReduce】

视频地址&#xff1a;尚硅谷大数据Hadoop教程&#xff08;Hadoop 3.x安装搭建到集群调优&#xff09; 尚硅谷大数据技术Hadoop教程-笔记01【大数据概论】尚硅谷大数据技术Hadoop教程-笔记02【Hadoop-入门】尚硅谷大数据技术Hadoop教程-笔记03【Hadoop-HDFS】尚硅谷大数据技术Ha…...

Linux信号sigaction / signal

Linux信号sigaction / signal 文章目录Linux信号sigaction / signal目的函数原型struct sigaction信号枚举值ISO C99 signals.Historical signals specified by POSIX.New(er) POSIX signals (1003.1-2008, 1003.1-2013).Nonstandard signals found in all modern POSIX system…...

坦克大战第一阶段代码

package tanke.game;import javax.swing.*; import java.awt.*; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.util.Vector;//为了监听键盘事件&#xff0c;实现keylistener public class mypanel extends JPanel implements KeyListener …...

博客系统前端实现

目录 1.预期效果 2.实现博客列表页 3.实现博客正文页 4.实现博客登录页 5.实现博客编辑页面 1.预期效果 对前端html,css,js有大致的了解后,现在我们实现了一个博客系统的前端页面.一共分为四个页面没分别是:登陆页面,博客列表页,博客正文页,博客编辑页 我们看下四个界面…...

ChatGPT技术原理、研究框架,应用实践及发展趋势(附166份报告)

​ 一、AI框架重要性日益突显&#xff0c;框架技术发展进入繁荣期&#xff0c;国内AI框架技术加速发展&#xff1a; 1、AI框架作为衔接数据和模型的重要桥梁&#xff0c;发展进入繁荣期&#xff0c;国内外框架功能及性能加速迭代&#xff1b; 2、Pytorch、Tensorflow占据AI框…...

【屏幕自适应页面适配问题】CSS的@media,为了适应1440×900的屏幕,使用@media解决问题

文章目录bug修改实例CSS3 media 查询CSS 多媒体查询&#xff0c;适配各种设备尺寸bug修改实例 <template><div id"deptAllDown" style"height: 400px;width:880px"/> </template>为了适应1440900的屏幕&#xff0c;使用media解决问题 …...

一篇文章理解堆栈溢出

一篇文章理解堆栈溢出引言栈溢出ret2text答案ret2shellcode答案ret2syscall答案栈迁移答案堆溢出 unlink - UAF堆结构小提示向前合并/向后合并堆溢出题答案引言 让新手快速理解堆栈溢出&#xff0c;尽可能写的简单一些。 栈溢出 代码执行到进入函数之前都会记录返回地址到SP…...

优化模型验证关键代码27:多旅行商问题的变体-多起点单目的地问题和多汉密尔顿路径问题

目录 1 多起点单目的地问题(Multiple departures single destination mTSP) 1.1 符号列表 1.2 数学模型 1.4 解的可视化结果...

快速搭建第一个SpringCloud程序

目录 1、Spring Boot项目脚手架快速搭建 1.1 生成工程基本配置 1.2 生成工程。 1.3 导入开发工具&#xff08;此处为Idea&#xff09; 1.4 运行代码 1.5 验证是否能访问 2、Spring Cloud环境搭建 2.1 版本匹配问题 2.2 Spring Cloud环境测试 3、引入Eureka Server 3…...

【离散数学】图论

1、有n个点没有边 零图 2、有1个点没有边 平凡图 3、含有平行边的图 多重图 4、简单图 不含有平行边和自回环的图 5、任意两个结点之间都有边 完全图 6、环贡献 两度 7、所有顶点的度数之和等于边数的两倍 8、在有向图中所有顶点的出度之和 或者 入度之和 等于边数 9、度数为…...

代码随想录算法训练营第三十七天-贪心算法6| 738.单调递增的数字 968.监控二叉树 总结

738.单调递增的数字 贪心算法 题目要求小于等于N的最大单调递增的整数&#xff0c;那么拿一个两位的数字来举例。 例如&#xff1a;98&#xff0c;一旦出现strNum[i - 1] > strNum[i]的情况&#xff08;非单调递增&#xff09;&#xff0c;首先想让strNum[i - 1]--&#…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

P3 QT项目----记事本(3.8)

3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec&#xff1f; IPsec VPN 5.1 IPsec传输模式&#xff08;Transport Mode&#xff09; 5.2 IPsec隧道模式&#xff08;Tunne…...

DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”

目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍&#xff1a; img 属性指定分区存放的 image 名称&#xff0c;指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件&#xff0c;则以 proj_name:binary_name 格式指定文件名&#xff0c; proj_name 为工程 名&…...

GruntJS-前端自动化任务运行器从入门到实战

Grunt 完全指南&#xff1a;从入门到实战 一、Grunt 是什么&#xff1f; Grunt是一个基于 Node.js 的前端自动化任务运行器&#xff0c;主要用于自动化执行项目开发中重复性高的任务&#xff0c;例如文件压缩、代码编译、语法检查、单元测试、文件合并等。通过配置简洁的任务…...

GitFlow 工作模式(详解)

今天再学项目的过程中遇到使用gitflow模式管理代码&#xff0c;因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存&#xff0c;无论是github还是gittee&#xff0c;都是一种基于git去保存代码的形式&#xff0c;这样保存代码…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 &#xff1a;主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 &#xff1a;确保数据的完整性&#xff0c;便于数据的查询和管理。 示例 &#xff1a;在学生信息表中&#xff0c;学号可以作为主键&#xff…...

android13 app的触摸问题定位分析流程

一、知识点 一般来说,触摸问题都是app层面出问题,我们可以在ViewRootImpl.java添加log的方式定位;如果是touchableRegion的计算问题,就会相对比较麻烦了,需要通过adb shell dumpsys input > input.log指令,且通过打印堆栈的方式,逐步定位问题,并找到修改方案。 问题…...

LangFlow技术架构分析

&#x1f527; LangFlow 的可视化技术栈 前端节点编辑器 底层框架&#xff1a;基于 &#xff08;一个现代化的 React 节点绘图库&#xff09; 功能&#xff1a; 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...