前端Vue入门-day01

news2024/11/17 3:45:42

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹)

目录

Vue 快速上手

Vue 概念

创建实例  

插值表达式

响应式特性

开发者工具 

Vue 指令 

v-show 

v-if 

v-else  v-else-if 

v-on

v-bind 

v-for

key 

v-model 


Vue 快速上手

Vue 概念

概念:Vue 是一个用于 构建用户界面   的 渐进式 框架

构建用户界面:基于数据渲染出用户看到的页面 

渐进式:循序渐进 

Vue 的两种使用方式:
① Vue 核心包开发
        场景: 局部 模块改造
② Vue 核心包 & Vue 插件 工程化开发
        场景: 整站 开发

框架 :一套完整的项目解决方案

优点:大大提升开发效率 ( 70%↑ )
缺点:需要理解记忆 规则 → 官网

创建实例  

初始化渲染,
核心步骤 4步:
        1. 准备容器
        2. 引包 (官网) - 开发版本 / 生产版本
        3. 创建 Vue 实例 new Vue()
        4. 指定配置项 → 渲染数据
                ① el 指定挂载点
                ② data 提供数据
<!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>
<body>
    <!-- 准备容器 -->
    <div id="app"> 
        {{msg}}
    </div>

    <!-- 引入开发版本包 -->
    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>

    <script>
        //vue构造函数
        const app = new Vue({
            //通过el配置选择器,指定vue是哪个盒子
            el:'#app',
            data:{
                msg:'hello world'
            }
        })
    </script>
</body>
</html>

插值表达式

插值表达式 {{}} 是一种 Vue 的模板语法
1. 作用: 利用表达式进行插值,渲染到页面中
表达式:是可以被求值的代码,JS引擎会将其计算出一个结果

2. 语法: {{ 表达式 }}

 3. 注意点:

(1)使用的数据必须存在 (data)
(2)支持的是表达式,而非语句,比如:if for ...
(3)不能在标签属性中使用 {{ }} 插值

响应式特性

数据改变,视图会自动更新
聚焦于数据 → 数据驱动视图
使用 Vue 开发,关注 业务的核心逻辑 ,根据业务 修改数据 即可

开发者工具 

装插件调试 Vue 应用

(1)通过谷歌应用商店安装 (国外网站)
(2)极简插件: 下载 → 开发者模式 → 拖拽安装 → 插件详情允许访问文件 https://chrome.zzzmh.cn/index
打开 Vue 运行的页面 ,调试工具中 Vue 栏 ,即可查看 修改数据 ,进行调试。

Vue 指令 

Vue 会根据不同的 【指令】 ,针对标签实现不同的 【功能】
指令:带有 v- 前缀 的 特殊 标签属性

v-show 

1. 作用: 控制元素显示隐藏
2. 语法: v-show = " 表达式 " 表达式值 true 显示 false 隐藏
3. 原理: 切换 display:none 控制显示隐藏
4. 场景: 频繁切换显示隐藏的场景

v-if 

1. 作用: 控制元素显示隐藏( 条件渲染
2. 语法: v-if = " 表达式 " 表达式值 true 显示 false 隐藏
3. 原理: 基于 条件判断 ,是否 创建 移除 元素节点
4. 场景: 要么显示,要么隐藏,不频繁切换的场景

v-else  v-else-if 

1. 作用: 辅助 v-if 进行判断 渲染
2. 语法: v-else v-else-if = "表达式"
3. 注意: 需要紧挨着 v-if 一起使用
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  
  <div id="app">
    <p v-if="gender === 1">性别:♂ 男</p>
    <p v-else>性别:♀ 女</p>
    <hr>
    <p v-if="score >= 90">成绩评定A:奖励电脑一台</p>
    <p v-else-if="score >= 70">成绩评定B:奖励周末郊游</p>
    <p v-else-if="score >= 60">成绩评定C:奖励零食礼包</p>
    <p v-else>成绩评定D:惩罚一周不能玩手机</p>
  </div>
  
  <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
  <script>

    const app = new Vue({
      el: '#app',
      data: {
        gender: 2,
        score: 95
      }
    })
  </script>

</body>
</html>

v-on

1. 作用: 注册事件 = 添加监听 + 提供处理逻辑
2. 语法:
① v-on:事件名 = "内联语句"
② v-on:事件名 = "methods中的函数名"

 

3. 简写: @事件名
4. 注意: methods函数内的 this 指向 Vue 实例

v-on 调用传参 

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>
    .box {
      border: 3px solid #000000;
      border-radius: 10px;
      padding: 20px;
      margin: 20px;
      width: 200px;
    }
    h3 {
      margin: 10px 0 20px 0;
    }
    p {
      margin: 20px;
    }
  </style>
</head>
<body>

  <div id="app">
    <div class="box">
      <h3>小周自动售货机</h3>
      <button @click="buy(5)">可乐5元</button>
      <button @click="buy(10)">咖啡10元</button>
      <button @click="buy(8)">牛奶8元</button>
    </div>
    <p>银行卡余额:{{ money }}元</p>
  </div>

  <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
  <script>
    const app = new Vue({
      el: '#app',
      data: {
        money: 100
      },
      methods: {
        buy (price) {
          this.money -= price
        }
      }
    })
  </script>
</body>
</html>

网页显示为:                              

v-bind 

1. 作用: 动态的设置html的 标签属性 → src url title ...
2. 语法: v-bind :属性名 ="表达式"
3. 注意: 简写形式 :属性名="表达式"

 

v-for

1. 作用: 基于 数据 循环, 多次 渲染整个元素 → 数组 、对象、数字...
2. 遍历数组语法:
v-for = "( item, index ) in 数组 "
        item 每一项, index 下标
        省略 index: v-for = " item in 数组 "

key 

v-for 的默认行为会尝试 原地修改元素 就地复用
语法: key属性 = "唯一标识"
作用: 给列表项添加的 唯一标识 。便于Vue进行列表项的 正确排序复用
注意点:
1. key 的值只能是 字符串 数字类型
2. key 的值必须具有 唯一性
3. 推荐使用 id 作为 key(唯一),不推荐使用 index 作为 key(会变化,不对应)

v-model 

1. 作用: 表单元素 使用, 双向数据绑定 → 可以快速 获取 或 设置 表单元素内容
① 数据变化 → 视图自动更新
视图 变化 → 数据 自动更新
2. 语法: v-model = '变量'

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

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

相关文章

【Spring Boot】第一个Spring Boot项目:helloworld

第一个Spring Boot项目&#xff1a;helloworld 本节从简单的helloworld程序开始介绍创建Spring Boot项目的方法和流程&#xff0c;以及Spring Boot项目结构&#xff0c;最后介绍项目中非常重要的pom.xml文件。 1.创建Spring Boot项目 有两种方式来构建Spring Boot项目的基础…

【1++的C++初阶】之string

&#x1f44d;作者主页&#xff1a;进击的1 &#x1f929; 专栏链接&#xff1a;【1的C初阶】 文章目录 一&#xff0c;浅谈string类二&#xff0c;string 类常用接口2.1 string的构造2.2 string类对象的容量操作2.3 string类对象的访问及遍历操作2.4 string类对象的修改操作2.…

Python 有趣的模块之pynupt——通过pynput控制鼠标和键盘

Python 有趣的模块之pynupt ——通过pynput控制鼠标和键盘 文章目录 Python 有趣的模块之pynupt ——通过pynput控制鼠标和键盘1️⃣简介2️⃣鼠标控制与移动3️⃣键盘控制与输入4️⃣结语&#x1f4e2; 1️⃣简介 &#x1f680;&#x1f680;&#x1f680;学会控制鼠标和键盘是…

Mongodb连接数据库

1.初始化 npm init 2.安装mongoose npm i mongoose 3.导入mongoose const mongooserequire("mongoose") 4.连接mongodb服务 mongoose.connect("mongodb://127.0.0.1:27017/user") 说明&#xff1a;mongodb是协议,user是数据库&#xff0c;如果没有会自动创…

经OPA运放后,读取电压出错

问题&#xff1a; 在焊接完两块板子上传程序测试时&#xff0c;程序上传完成&#xff0c;有一块板子在使用OPA读取电压时&#xff0c;在未插入电阻情况下&#xff0c;电压读取是正确的&#xff0c;在插入50K电压后&#xff0c;电压值应该是之前的两倍&#xff0c;但是电压变化…

unittest单元测试2

目录 unittest框架解析 构建测试套件 用例的执行顺序 unittest断言 HTML报告生成 异常捕捉与错误截图 数据驱动 &#x1f381;更多干货 完整版文档下载方式&#xff1a; unittest框架解析 unittest 是python 的单元测试框架&#xff0c;unittest 单元测试提供了创建测…

怎么把CAJ转换成PDF文件格式?分享这两个方法!

随着互联网的发展&#xff0c;中国知网(CNKI)已成为许多学术研究人员和学生们获取文献资料的重要来源。在CNKI上&#xff0c;常见的文件格式是CAJ&#xff08;China Academic Journals&#xff09;。然而&#xff0c;由于个人喜好或特定需求&#xff0c;我们有时会希望将这些CA…

PDF文档转化为HTML网页格式怎么操作?分享这三个方法给大家!

PDF文档作为一种常见的文档格式&#xff0c;广泛应用于各个领域。然而&#xff0c;如果您想将PDF文档直接发布到网站上&#xff0c;或是想在网页上进行展示&#xff0c;您可能需要将PDF转化为HTML格式。在此&#xff0c;我为大家介绍三种将PDF转化为HTML格式的方法。 方法一&am…

mysql语句练习题,创建表create ,枚举中文字符集设置,修改(update)

作业&#xff1a; 1.创建表&#xff1a; 创建员工表employee&#xff0c;字段如下&#xff1a; id&#xff08;员工编号&#xff09;&#xff0c;name&#xff08;员工名字&#xff09;&#xff0c;gender&#xff08;员工性别&#xff09;&#xff0c;salary&#xff08;员工薪…

d3dx9_43.dll丢失怎么解决(分享三个解决方法)

d3dx9_43.dll是一个Microsoft DirectX的动态链接库文件&#xff0c;它包含了一系列用于图形、音频和输入的功能和接口。它是DirectX 9的一部分&#xff0c;用于提供游戏和其他图形应用程序所需的图形和声音效果。如果计算机中d3dx9_43.dll丢失&#xff0c;会造成很多游戏无法打…

opencv图片根据规则改变颜色

解析 1. 读入图片 2.通道分离 3.像素值在【100&#xff0c;200】之间&#xff0c;赋值128。大于200赋值255&#xff0c;小于100赋值0。 源码 import cv2 img_raw_path"past/unet-test_result0-0-1-0.png" img_rawcv2.imread(img_raw_path) (r,g,b)cv2.split(img_…

运动控制介绍

运动控制介绍 1 介绍1.1 概述1.2 运动控制的基本架构1.3 常见的控制功能1.4 运动控制研究的问题分类位置变化问题周期式旋转速度变化问题 1.5 知识体系1.6 路径规划 和 轨迹规划区别与联系1.7 运动控制系统 2 《运动控制系统》[班华 李长友 主编] 摘要1 绪论1.1 运动控制研究的…

信息系统项目管理师(第四版)教材精读思维导图-第二章信息技术发展

请参阅我的另一篇文章&#xff0c;综合介绍软考高项&#xff1a; 信息系统项目管理师&#xff08;软考高项&#xff09;备考总结_计算机技术与软件专业技术_铭记北宸的博客-CSDN博客 思维导图源文件下载&#xff1a; https://download.csdn.net/download/hanjingjava/88023847 …

SpringBoot 如何使用 EmbeddedDatabaseBuilder 进行数据库集成测试

SpringBoot 如何使用 EmbeddedDatabaseBuilder 进行数据库集成测试 在开发 SpringBoot 应用程序时&#xff0c;我们通常需要与数据库进行交互。为了确保我们的应用程序在生产环境中可以正常工作&#xff0c;我们需要进行数据库集成测试&#xff0c;以测试我们的应用程序是否能…

非线性规划快速入门和练习题集

目录 定义 标准形式 练习题1 练习题2 练习题3 定义 当目标函数或者约束条件中含有非1次项的时候,会出现非线性函数的规划。 标准形式 ​​​​​​​ ​​​​​​​ ​​​​​​​ ​​​​​​​ 其中f(x)是标准函数&#xff0c;A,b,Ae…

Basic——C++类型转换(转型操作符详解)

C转型操作符 1.C语言类型转换存在的隐患2.static_cast3.const_cast介绍测试案例 4.dynamic_cast5.reinterpret_cast 1.C语言类型转换存在的隐患 数据丢失&#xff1a;当将一个较大的数据类型转换为较小的数据类型时&#xff0c;可能会导致数据丢失。例如&#xff0c;将一个浮点…

mac M1 安装nacos

背景 m1不支持本地安装&#xff0c;只能用docker &#xff1a; “由于 rocksdb 暂不支持 M1 平台&#xff0c;所以使用 Zulu JDK 的小伙伴们运行 Nacos 2.x 版本会报错&#xff0c;网上通用的解决方案是使用 Oracle JDK 来运行 Nacos 2.x 版本&#xff0c;但对于强迫症的我来说…

计算机网关原理、子网掩码原理(路由器、交换机)

文章目录 网关网关的历史网关的功能网关的原理相关疑问为什么用子网掩码与IP地址进行与运算来确定一个IP地址所属的子网&#xff1f;网关地址是谁定的&#xff0c;是配置路由的人随意定的吗&#xff1f;&#xff08;配置人员定的&#xff09;如何正确设置网关地址&#xff08;路…

java的断言

断言介绍 Java的断言就是一条assert 声明&#xff0c;其中包含了一个布尔表达式。 断言可以被启用或者禁用&#xff0c;默认是禁用的。 断言被启用的情况下&#xff0c;执行到断言的声明&#xff0c;就会计算布尔表达式的值。如果表达式的值为false&#xff0c;那么就会抛出一…