Vue2 第二节 ----初识Vue(简单示例,模板语法,数据绑定)

知识点:

1.Vue的简单示例

2.模板语法

3.数据绑定

4.el和data的两种写法

5.MVVM模型

一. Vue的简单实例

    <div id="root">
        <h1>hello, {{name.toUpperCase()}}, {{address}}</h1>
    </div>
    <script type="text/javascript">
        // 创建Vue实例  参数:配置对象
        new Vue({
            el: '#root', // el用于指定当前Vue实例为哪个容器服务,值通常为css选择器
            data: { // data中用于存储数据,数据供el所指定的容器去使用,值先写成一个对象
                name: 'chen',
                address: '西安'
            }
        })
    </script>

(1) new Vue用于创建Vue实例

(2) 里面的参数称为配置对象

(3) el是用于指定当前Vue实例为哪个容器服务,通常值为css选择器

(4) data中用于存储数据,数据供el所指定的容器去使用,值先写成一个对象,后面学习组件的话,必须写成一个函数

(5)想让vue工作,必须创建一个vue实例,并且要传入一个配置对象

(6) root容器中的代码依然符合html规范,只是混入了一些特殊的Vue语法

(7)root容器中的代码称为Vue模板

(8) vue实例与容器之间一一对应,一个实例管理一个容器

(9)真实的开发中只有一个Vue实例,并且会配合组件一起使用

(10) {{xxx}}可以读到data中的所有属性,里面必须写JS表达式

(11)一旦data中数据发生变化,那么模板中用到该数据的地方会自动更新

(12)JS表达式和JS代码的区别:JS表达式会生成一个值,可以放到任何一个需要的地方,JS代码是语句,比如if(){}   ,for() {}

 (13) Vue开发者工具有时会优点问题,问题如下:

  ① 图标是灰色的,并且提示Vue.js not detected

 解决方法:

1.打开管理拓展工具,点击Vue2开发者工具的详情页

 2.打开允许访问文件地址,重新打开html页面刷新,图标就会变亮

 

 ② F12里面没有vue选项,上面开发者工具图标亮了之后,重新打开html页面,多刷新几遍

 二. Vue的模板语法

Vue的模板语法有两大类

(1)插值语法

功能:用于解析标签体内容

写法:{{xxx}} xxx是js表达式,可以直接读取到data中的属性

<h3>你好,{{name}}</h3>

(2)  指令语法

功能:用于解析标签(包括标签属性,标签体内容,绑定事件)

写法:v-bind: href = "xxx" 或者可以简写为 :href="xxx", xxx同样要写js表达式,且可以直接读到data中的所有属性,v-bind会把引号后面的内容看作JS表达式去执行

       <!--v-bind会把后面引号中的东西看作表达式去执行-->
        <a v-bind:href="link.url">点击去{{link.name}}</a>
        <!-- v-bind可以简写成: -->
        <a :href="link.url">点击去{{link.name}}2</a>

三. 数据绑定

Vue中有两种数据绑定的方式

① 单向绑定(v-bind):数据只能从data流向页面

② 双向绑定(v-modal): 数据不仅能从data流向页面,还可以从页面流向data

单向绑定:

① 修改页面的数据不会影响data中的数据

② 修改data中的数据会影响到页面的数据,所以数据只能从data流向页面

<!-- 普通写法 -->
<input type="text" v-bind:value="name">

<!-- 简单写法:省略v-bind -->
<input type="text" :value="name"><br>

 双向绑定:

① 修改页面的数据会影响到data中的数据

② 修改data中的数据也会影响到页面中的数据

③ 互相影响所以称为双向绑定

<!-- 普通写法 -->
<input type="text" v-model:value="name">

<!-- 简单写法  :value可以省略 -->
<input type="text" v-model="name">

 

 四. el和data的两种写法

1. el的两种写法

(1)new Vue的时候配置el属性

const v = new Vue({
            el:'#root', // 第一种写法
            data: {
                name: '陈'
            }
        })

(2)先创建Vue实例,随后通过v.$mount('#root')指定el的值

     const v = new Vue({
            data: {
                name: '陈'
            }
        })
        // 第二种写法  挂载
        v.$mount('#root')

2.data的两种写法

(1)对象式

     new Vue({
            el: '#root',
            data: {
                name: '陈'
            }
        })

(2)函数式(组件开发全部使用函数式写法)

     new Vue({
            el: '#root',
            // data的第二种写法:函数式
            // 不要写成箭头函数,要写成普通函数
            data: function () {
                console.log(this) // 此处的this是Vue实例对象
                return {
                    name: '陈'
                }
            }
        })

函数式的可以简写为以下代码:将:和function省略

     new Vue({
            el: '#root',
            data () {
                console.log(this) // 此处的this是Vue实例对象
                return {
                    name: '陈'
                }
            }
        })

注意:这个函数只能写成普通函数,不要写成箭头函数,因为如果写成箭头函数,data里面的this就会指向window,如果写成普通函数,this就会指向vue实例对象,在data中就可以使用这个vue实例对象,凡是Vue管理的函数,都不能写成箭头函数

五.MVVM模型

(1)M: 模型(Model):对应data中的数据

(2)V:视图(View): 模板

(3)VM:视图模型(ViewModel):Vue实例对象

① DOM Listeners:将view绑定到Model上,View变化,对应的Modal也会发生变化(把界面绑定到数据上就是界面中的数据如果发生变化,data中的数据也会跟着变,参考v-model的双向绑定)

② Data Bindings: 将Model绑定到View上(把数据绑定到界面上的意思就是通过模板或者v-bind可以将数据显示在界面对应位置)

在代码中的体现:Vue实例负责将View和Model绑定起来

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

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

相关文章

ChatGPT 是如何工作的:从预训练到 RLHF

欢迎来到人工智能的未来&#xff1a;生成式人工智能&#xff01;您是否想知道机器如何学习理解人类语言并做出相应的反应&#xff1f;让我们来看看ChatGPT ——OpenAI 开发的革命性语言模型。凭借其突破性的 GPT-3.5 架构&#xff0c;ChatGPT 席卷了世界&#xff0c;改变了我们…

[Java] 单例设计模式详解

模式定义&#xff1a;保证一个类只有一个实例&#xff0c;并且提供一个全局访问点&#xff0c;时一种创建型模式 使用场景&#xff1a;重量级的对象&#xff0c;不需要多个实例&#xff0c;如线程池&#xff0c;数据库连接池 单例设计模式的实现 1.懒汉模式&#xff1a;延迟…

066、故障处理之热点问题

为什么要解决热点 分布式架构中各个组件的理想状态&#xff1a;资源利用率相对均衡 形成写热点的原因 高频访问的小表SQL执行计划不合理具有顺序增长属性的索引扫描 数据组织模型 例如数据是序列递增&#xff0c;则有可能数据全部都集中一个region上 &#xff0c;或者集中…

6、用restful风格写controller方法接口,单元测试依赖

编写单元测试&#xff0c;用restful风格写controller方法 单元测试依赖 实际项目开发中&#xff0c;单元测试与业务代码通常都会要求同步进行 TDD测试驱动开发&#xff1a;先编写单元测试&#xff0c;然后努力去开发业务代码去满足所有的单元测试用例。 添加SpringBoot的测试…

Springer独立出版 | 2023年触觉与虚拟现实国际会议(ICHVR 2023)

会议简介 Brief Introduction 2023年触觉与虚拟现实国际会议(ICHVR 2023) 会议时间&#xff1a;2023年12月15日-17日 召开地点&#xff1a;中国北海 大会官网&#xff1a;www.ichvr.org 2023年触觉与虚拟现实国际会议(ICHVR 2023)由东南大学、上海交通大学联合主办&#xff1b;…

Python-ElasticSearch客户端的封装(聚合查询、统计查询、全量数据)

目录 ES Python客户端介绍封装代码测试代码参考 ES Python客户端介绍 官方提供了两个客户端elasticsearch、elasticsearch-dsl pip install elasticsearchpip install elasticsearch-dsl第二个是对第一个的封装&#xff0c;类似ORM操作数据库&#xff0c;可以.filter、.group…

com.android.ide.common.signing.KeytoolException:

签名没问题但是提示Execution failed for task :app:packageDebug. > A failure occurred while executing com.android.build.gradle.tasks.PackageAndroidArtifact$IncrementalSplitterRunnable > com.android.ide.common.signing.KeytoolException: Failed to read ke…

github gitlab 多用户多平台切换

一、背景 我需要用账号1 来登录并管理github 账号 我需要用账号2 来登录并管理gitlab 账号 二、设置账号 邮箱 设置账号1用户名与邮箱 git config --global user.name "miaojiang" git config --global user.email "187133163.com" 三、生成本地密钥…

pycharm配置arcpy环境

目录 1、安装ArcGIS软件2、安装PyCharm3、创建PyCharm项目4、验证ArcPy环境 在GIS开发中&#xff0c; ArcPy是不可或缺的重要组件&#xff0c;而PyCharm作为一款功能强大的Python IDE&#xff0c;为我们提供了更便捷、高效的开发环境。在本文中&#xff0c;我们将详细介绍如何…

sublime配置less的一些坑(1)

仅在sublime的Install Package安装保存less报错 在sublime的Install Package安装less 打开sublime软件,按住CtrlShiftP组合键,弹出的界面中选择Install Package 选中后enter或者回车。等会弹出一个弹窗,大致意思是说你已经成功安装了package control。如果你在此之前已经安装了…

【力扣每日一题】2023.7.31 重排链表

目录 题目&#xff1a; 示例: 分析: 代码: 题目&#xff1a; 示例: 分析: 给我们一个链表&#xff0c;让我们按照题目要求原地修改重排链表。 那么具体怎么个重排法呢&#xff0c;题目给出了一串式子&#xff0c;其实就是把链表分为前后两段&#xff0c;然后在前半段的节…

企业工程管理系统源码之提高工程项目管理软件的效率

高效的工程项目管理软件不仅能够提高效率还应可以帮你节省成本提升利润 在工程行业中&#xff0c;管理不畅以及不良的项目执行&#xff0c;往往会导致项目延期、成本上升、回款拖后&#xff0c;最终导致项目整体盈利下降。企企管理云业财一体化的项目管理系统&#xff0c;确保…

UML/SysML建模工具更新(2023.7)(1-5)有国产工具

DDD领域驱动设计批评文集 欢迎加入“软件方法建模师”群 《软件方法》各章合集 最近一段时间更新的工具有&#xff1a; 工具最新版本&#xff1a;Visual Paradigm 17.1 更新时间&#xff1a;2023年7月11日 工具简介 很用心的建模工具。支持编写用例规约。支持文本分析和C…

小目标检测(1)——大恒(DaHeng)相机操作与控制编程

文章目录 引言正文相关开发库的介绍编程准备配置引用头文件GalaxyIncludes.h配置lib文件 具体编程过程初始化和反初始化枚举设备开关设备 属性控制属性控制器种类 图像采集控制和图像处理采单帧回调采集图像处理流对象属性控制 获取设备事件获取掉线事件通知 样例程序分析补充&…

重生之我要学C++第五天

这篇文章主要内容是构造函数的初始化列表以及运算符重载在顺序表中的简单应用&#xff0c;运算符重载实现自定义类型的流插入流提取。希望对大家有所帮助&#xff0c;点赞收藏评论&#xff0c;支持一下吧&#xff01; 目录 构造函数进阶理解 1.内置类型成员在参数列表中的定义 …

2023.07.29 驱动开发DAY6

通过epoll实现一个并发服务器 服务器 #include <stdio.h> #include <string.h> #include <unistd.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <sys/epoll.h…

脑电信号处理与特征提取——6.运用机器学习技术和脑电进行大脑解码(涂毅恒)

目录 六、运用机器学习技术和脑电进行大脑解码 6.1 前言 6.2 基于脑电数据的机器学习基础分析 6.3 基于脑电数据的机器学习进阶分析 6.4 代码解读 六、运用机器学习技术和脑电进行大脑解码 6.1 前言 6.2 基于脑电数据的机器学习基础分析 6.3 基于脑电数据的机器学习进阶分…

内网隧道代理技术(十五)之 Earthworm的使用(二级代理)

Earthworm的使用(二级代理) 本文紧接着上一篇文章继续讲解Earthworm工具的使用 (二级代理)正向连接 二级正向代理发生在如下的情况: 1、Web服务器在公网,黑客可以直接访问 2、B机器在内网,黑客不能直接访问 3、Web服务器可以访问内网机器B 4、内网机器B可以访问公司…

flask创建数据库连接池

flask创建数据库连接池 在Python中&#xff0c;您可以使用 Flask-SQLAlchemy 这个扩展来创建一个数据库连接池。Flask-SQLAlchemy 是一个用于 Flask 框架的 SQLAlchemy 操作封装&#xff0c;实现了 ORM(Object Relational Mapper)。ORM 主要用于将类与数据库中的表建立映射关系…

Spring Boot实践三 --数据库

一&#xff0c;使用JdbcTemplate访问MySQL数据库 1&#xff0c;确认本地已正确安装mysql 按【winr】快捷键打开运行&#xff1b;输入services.msc&#xff0c;点击【确定】&#xff1b;在打开的服务列表中查找mysql服务&#xff0c;如果没有mysql服务&#xff0c;说明本机没有…