16_ Vue.js高级指南:条件渲染、列表渲染与数据双向绑定

文章目录

  • 1. 条件渲染v-if
  • 2. 列表渲染v-for
  • 3. 数据双项绑定v-model
  • 4. 计算属性
  • Appendix

1. 条件渲染v-if

  • v-if标签直接接收函数或boolean类型变量
    • v-if 为true,则当前元素会进入到dom树
    • v-else会自动执行 前方v-if的取反操作
  • v-show
    • v-show值为true则值展示
    • 值不展示
  • 区别
    • v-if 数据为false 则元素不在dom树种
    • v-show 数据为false 则元素的属性display=none 元素依然在dom树中仅仅是通过css样式控制元素隐藏

在这里插入图片描述

2. 列表渲染v-for

  • v-for迭代式遍历将数据放入一个标签中

在这里插入图片描述

此处爆红没有问题,是vscode编译器认为我此处出错

3. 数据双项绑定v-model

  • 之前的绑定都是单向绑定
    • 单项绑定:用户在界面上 改变其数据不会影响到原变量数据
    • 双项绑定:用户在界面上 改变其数据会同步修改原变量数据(一般都用于表单标签)
  • 双项绑定可以认为是收集表单信息的命令

在这里插入图片描述

<script setup type="module">import {ref} from 'vue' let message =  ref("zhangsan")
</script>
<template><div><input type="text" v-model="message"> <br>{{ message }}</div>
</template>
  • 绑定表单数据
<script type="module" setup>//引入模块import { reactive,ref} from 'vue' let hbs = ref([]); //装爱好的值let user = reactive({username:null,password:null,introduce:null,pro:null})   function login(){alert(hbs.value);alert(JSON.stringify(user));}function clearx(){//user = {};// 这中写法会将数据变成非响应的,应该是user.username=""user.username=''user.password=''user.introduce=''user.pro=''hbs.value.splice(0,hbs.value.length);;}
</script><template><div>账号: <input type="text" placeholder="请输入账号!" v-model="user.username"> <br>密码: <input type="text" placeholder="请输入账号!" v-model="user.password"> <br>爱好: 吃 <input type="checkbox" name="hbs" v-model="hbs" value=""><input type="checkbox" name="hbs" v-model="hbs" value=""><input type="checkbox" name="hbs" v-model="hbs" value=""><input type="checkbox" name="hbs" v-model="hbs" value=""><br>简介:<textarea v-model="user.introduce"></textarea><br>籍贯:<select v-model="user.pro"><option value="1"></option><option value="2"></option><option value="3"></option><option value="4"></option><option value="5"></option><option value="6"></option></select> <br><button @click="login()">登录</button> <button @click="clearx()">重置</button><hr>显示爱好:{{ hbs }}<hr>显示用户信息:{{ user }}</div> 
</template> <style scoped>
</style>

4. 计算属性

  • computed需要单独导入
import{ref,reactive,computed} from "vue"
  • 计算属性的作用,可以将一个函数 的计算结果赋值给一个变量使用
  • 计算属性就是由别的属性计算而来

在这里插入图片描述

取代了传统的调用方法返回值的行为

  • 性能方面,计算属性的性能优于 方法返回()

Appendix

  • 关于JS和TS选择
TS是JS的一个超集,使用TS之后,JS的语法更加的像JAVA,实际开发中用的确实更多,那么这里为什么我们没有立即使用TS进行开发,原因如下
  • 响应式数据&&非响应式数据

  • 响应数据:在数据变化时候,dom树跟着更新

  • 非响应数据:在数据变化的时候,dom树不跟着变化

  • vue3中,数据需要通过ref/reactive函数的处理才是响应式的;

  • ref/reactive函数导入就能用,vue自带;

 import {ref,reactive} from 'vue'
  • ref函数的特征

    • 在script标签中,操作ref 的响应式数据需要通过.value的形式操作
    • 在template标签中,操作ref直接用即可
  • .vue模块是放到index文件的一个原材料

  • main.js删除了会影响页面显示

  • button标签没有value值,直接在标签中写值即可

  • 导入ref还非得加{},否则无法使用

import {ref} from  'vue'
  • 关于html样式设计;两个div块进行并排,使用浮动操作,宽度使用% 别用像素进行处理即可;

  • @click@sendMenu的值应该是一个JavaScript表达式,它定义了当事件发生时应该执行的函数。所以调用函数时候不带括号;

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

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

相关文章

Linux配置uwsgi环境

Linux配置uwsgi环境 1.进入虚拟环境 source /envs/django_-shop-system/bin/activate2.安装uwsgi pip install uwsgi3.基于uwsgi运行项目 – 基于配置文件 在项目目录下创建配置文件 #socket 0.0.0.0:8005 http 0.0.0.0:8005 # http120.55.47.111:8005 chdir/opt/www/djang…

51单片机-独立按键控制灯灯灯

目录 简介: 一. 1个独立按钮控制一个灯例子 二. 在加一个独立按键,控制第二个灯 三. 第一个开关 开灯, 第二个开关关灯 四. 点一下开灯,在点一下关灯 五. 总结 简介: 51 单片机具有强大的控制能力&#xff0c;而独立按键则提供了一种简单的输入方式。 当把独立按键与 …

LeetCode72编辑距离

题目描述 解析 一般这种给出两个字符串的动态规划问题都是维护一个二维数组&#xff0c;尺寸和这两个字符串的长度相等&#xff0c;用二维做完了后可以尝试优化空间。这一题其实挺类似1143这题的&#xff0c;只不过相比1143的一种方式&#xff0c;变成了三种方式&#xff0c;就…

java中关于>>>一点理解

如果两个int类型的非常大的整数相加&#xff0c;得到的结果很有可能是一个负数&#xff0c;因为在Java中对数字的计算是将数字转换成二进制进行计算的&#xff0c;并且Java会将得到的二进制结果的最高位看成符号位&#xff0c;从而导致得到负数&#xff0c; 举个例子&#xff…

微型丝杆与滚珠丝杆性能差异与适用场景!

滚珠丝杆是工具机械和精密机械上最常使用的传动元件&#xff0c;其主要功能是将旋转运动转换成线性运动&#xff0c;或将扭矩转换成轴向反复作用力。同时兼具高精度、可逆性和高效率的特点。而微型丝杆是一种直径为0.5mm以下且线性误差在几微米以内&#xff0c;精度高、传动稳定…

达梦8 新老排序机制比较

达梦的排序机制由四个dm.ini参数控制&#xff1a; #maximum sort buffer size in Megabytes &#xff0c;有效值范围&#xff08;1~2048&#xff09; SORT_BUF_SIZE 100 #maximum sort blk size in Megabytes&#xff0c;有效值范围&am…

vivado HW_BITSTREAM、HW_CFGMEM

HW_比特流 描述 从比特流文件创建的硬件比特流对象hw_bitstream&#xff0c;用于关联 在Vivado的硬件管理器功能中使用硬件设备对象hw_device 设计套件。 比特流文件是从具有write_bitstream的放置和路由设计创建的 命令硬件位流对象是使用 create_hw_bitstream命令&#xff0c…

【Gitlab】Gitlab MAC M1通过Docker Desktop安装教程

一、拉取镜像 docker pull yrzr/gitlab-ce-arm64v8 二、配置容器 2.1 配置Volumes 镜像下载完成后&#xff0c;可在Docker Desktop看到镜像 点击run&#xff0c;弹出以下界面&#xff0c;配置端口映射和目录挂载后&#xff0c;即可生成一个容器 配置Volumes Host PathCont…

Redis命令使用示例(二)

1 COMMAND INFO 返回多个Redis命令的详细信息的数组回复 redis> COMMAND INFO get set eval 1) 1) "get"2) (integer) 23) 1) "readonly"2) "fast"4) (integer) 15) (integer) 16) (integer) 17) 1) "read"2) "string"…

机器学习--回归模型和分类模型常用损失函数总结(详细)

文章目录 引言 回归模型常用损失函数均方误差&#xff08;Mean Squared Error, MSE&#xff09;均方根误差&#xff08;Root Mean Squared Error, RMSE&#xff09;平均绝对误差&#xff08;Mean Absolute Error, MAE&#xff09;Huber损失&#xff08;Huber Loss&#xff09; …

【名词解释】Unity的Slider组件及其使用示例

Unity的Slider组件是一个UI控件&#xff0c;它允许用户通过拖动滑块来选择一个值&#xff0c;这个值通常在指定的范围内。Slider组件通常用于调整游戏设置&#xff08;如音量、亮度等&#xff09;或作为游戏中的输入方式。 以下是一些常见的使用场景&#xff1a; 音量控制&…

【HTTP系列】HTTP1.0/1.1/2.0 的区别

文章目录 一、HTTP1.0二、HTTP1.1三、HTTP2.0# 多路复用二进制分帧首部压缩服务器推送 四、总结HTTP1.0&#xff1a;HTTP1.1&#xff1a;HTTP2.0&#xff1a; 参考文献 一、HTTP1.0 HTTP协议的第二个版本&#xff0c;第一个在通讯中指定版本号的HTTP协议版本 HTTP 1.0 浏览器…

学习笔记——路由网络基础——环回接口(loopback)

6、环回接口(loopback) (1)定义 环回接口(loopback) &#xff1a;是一种虚拟的接口&#xff0c;是一种纯软件性质的虚拟接口&#xff0c;模拟一个单独的网段。 Loopback等于在设备中模拟另外不同的网络&#xff0c;实现不需要物理接口连接设备&#xff0c;依然可以模拟的功能…

linux 启动minio.rpm , minio服务启动

在Linux系统中安装并启动MinIO服务器&#xff0c;可以使用以下步骤&#xff1a; 首先&#xff0c;确保有一个MinIO的RPM包。如果没有&#xff0c;可以从MinIO的官方网站下载。 使用RPM命令安装MinIO包&#xff1a; sudo rpm -ivh minio.rpm安装完成后&#xff0c;MinIO服务会…

海思Hi3519DV500方案1200万无人机吊舱套板

海思Hi3519DV500方案1200万无人机吊舱套板 Hi3519DV500 是一颗面向行业市场推出的超高清智能网络摄像头SoC。该芯片最高 支持四路sensor 输入&#xff0c;支持最高4K30fps 的ISP 图像处理能力&#xff0c;支持2F WDR、 多级降噪、六轴防抖、全景拼接、多光谱融合等多种传统图像…

【Python】一文向您详细介绍 `__dict__` 的作用和用法

【Python】一文向您详细介绍 __dict__ 的作用和用法 下滑即可查看博客内容 &#x1f308; 欢迎莅临我的个人主页 &#x1f448;这里是我静心耕耘深度学习领域、真诚分享知识与智慧的小天地&#xff01;&#x1f387; &#x1f393; 博主简介&#xff1a;985高校的普通本硕…

TalkingData数据统计:洞察与应用

TalkingData数据统计&#xff1a;洞察与应用 在数据驱动的时代&#xff0c;数据统计和分析已经成为各行各业的重要工具。在这个过程中&#xff0c;TalkingData作为一家领先的数据智能服务提供商&#xff0c;为我们提供了丰富的数据分析工具和解决方案。本文将带您深入了解Talk…

以sqlilabs靶场为例,讲解SQL注入攻击原理【42-53关】

【Less-42】 使用 or 11 -- aaa 密码&#xff0c;登陆成功。 找到注入点&#xff1a;密码输入框。 解题步骤&#xff1a; # 获取数据库名 and updatexml(1,concat(0x7e,(select database()),0x7e),1) -- aaa# 获取数据表名 and updatexml(1,concat(0x7e,(select group_conca…

【教程】让小爱音箱Play增强版接入Mi-GPT

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你&#xff0c;欢迎[点赞、收藏、关注]哦~ 项目地址&#xff1a;https://github.com/idootop/mi-gpt MiIOT&#xff1a;小米小爱音箱Play 增强版 - 产品规格 - Xiaomi Miot Spec 实现效果图&…

数据库(27)——多表查询——自连接

语法 SELECT 字段列表 FROM 表A 别名A JOIN 表A 别名B ON 条件...; 自连接可以是内连接查询也可以是外连接查询。 演示 我新增了字段friend便于演示 查询所有人的名字以及他们的friend的人的名字&#xff1a; select a.name,b.name from user a,user b where a.friendb.id; 其…