Vue3_基础使用

vue2的选项式与vue3的组合式区别:

选项式:vue2中数据与方法计算属性等等,针对一个数据的处理在不同的配置中,当业务复杂时很难维护,修改起来也不好查找。

vue3的组合式:将针对数据的方法计算属性等等放在一起管理,利于管理,方便查找。

0.创建项目,到文件夹cmd 输入:  npm create vue@latest

    然后输入一个项目名称,然后除了TypeScript为YES其他都选NO到最后会生成一个项目。

代码:

1.在其中定义:变量,数组,对象,方法    html中就能直接{{}}使用

<script  lang="ts" setup>
......
</script>

2.引用说明

ref:添加响应式的   简单变量  和   对象,使用需要加 .value  可以借助插件自动补全.value

reactive:只是给对象添加响应式,使用不用加.value

watch:引入监听

watchEffect:引入更高级的监听,不需要告诉他监视什么,他自己根据你的代码去识别。

import {ref,reactive,watch,watchEffect} from 'vue'

3.使用ref创建一个可以使用的简单的变量。

//html 中直接{{user}}
<script  lang="ts" setup>//引入import {ref,reactive} from 'vue'let user=ref("php");let pwd=ref("123456");
</script>

留意lang="ts" setup

4.使用reactive创建一个可以使用的简单的对象。

//html中{{msg.id}}
<script  lang="ts" setup>//进入import {ref,reactive} from 'vue'let msg=reactive({id:1,StationName:"珠海北"});
</script>

5.当中可以创建计算属性,方法,监视等等

<script  lang="ts" setup>//引入方法import {ref,reactive,watch,watchEffect} from 'vue'//声明响应式数据let info=ref({name:"evan.pei",age:30,skill:["vue","c#"]});//方法function updateAge(){info.value.age++;}//watch,对象属性监听用方法()=>...watch(()=>info.value.age,(n)=>{console.log("age变成了",n)});//watchEffect进行监听,他会自动去代码块中识别哪些要监听watchEffect(()=>{if(info.value.age>=35)info.value.name="EvanPei";});
</script>

6.计算属性

//计算属性
import {computed} from 'vue'
let name=computed(()=>{return name+"~";})
//toRefs:结构化赋值后可以直接用 let{name,age}=toRefs(person)将大括号中的变量转为ref的。

7.停止监视     接收wacth用于停止,deep:true深度监视对象里面全部都监视

//监视 watch
import {watch,watchEffect} from 'vue'
const stopWatch=watch(sum,(newV,oldV)=>{ ...逻辑if(newV>=10)stopWatch();//停止监视
},
{deep:true,//深度监视 immediate:true//立即监视
})

8.其他

//因为reactive不能直接替换整个对象,需要借助Object.assign
//这个相当于把对象的每个值赋值一遍而不是直接替换对象
Object.assign(person,{...});
//监视对象中的某一个属性,或者是对象(如需深度监视加deep:true)
watch(()=>{return person.name},(n,o)=>{...})
//同时监视多个
watch([()=>person.name,()=>person.car.c1],()=>{...})
//watchEffect监视,不需要指定监视谁它自己根据你写的逻辑去分析
watchEffect(()=>{...})//直接写逻辑

9.插件:可以设置name,自动加.value

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

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

相关文章

FPGA高端项目:Xilinx Zynq7020系列FPGA 多路视频缩放拼接 工程解决方案 提供4套工程源码+技术支持

目录 1、前言版本更新说明给读者的一封信FPGA就业高端项目培训计划免责声明 2、相关方案推荐我这里已有的FPGA图像缩放方案我已有的FPGA视频拼接叠加融合方案本方案的Xilinx Kintex7系列FPGA上的ov5640版本本方案的Xilinx Kintex7系列FPGA上的HDMI版本本方案的Xilinx Artix7系列…

深度解读 BigANN 2023 四大赛题,向量搜索还有更好的解决方案?

近年来&#xff0c;向量搜索大赛 BigANN 一直是行业关注的焦点。原因在于&#xff0c;BigANN 不仅是在向量搜索领域具有强大影响力的比赛&#xff0c;开发者在赛后贡献出的相关解决方案更是行业进步与发展的重要动力。 向量检索大赛 BigANN 旨在提升大规模 ANN 的研究创新和生产…

Django模型(八)

一、修改数据 先获取对象,通过对象属性更新数据,再保存 (更新单一数据)通过QuerySet的update函数更新数据 (更新多条数据) #单条记录修改 save c = Cook.objects.get(pk=1) c.name = 安妮 c.save()# 更新多个值 update Cook.objects.filter(sect=粤菜).update(level=5)1.1、…

Methodot低代码实战教程(一)——熟悉可视化Echart组件

一、产品介绍&#xff1a; Methodot是行云创新旗下一款面向研发使用的一站式云原生开发及应用托管平台&#xff0c;产品内有大量开箱即用的服务和开发工具&#xff0c;例如&#xff1a; 支持开发团队进行微服务架构设计&#xff08;例如一个袜子商店管理系统&#xff09;&…

win11安装MySql5.7

1、下载 打开下载链接&#xff1a;MySQL :: Download MySQL Installer 2、安装 2.1、安装界面 2.2、选择自定义安装 2.3、根据自己系统的位数进行选择是X64还是X86 2.4、选择安装路径 2.5、继续下一步 2.6、选择服务器专用&#xff0c;端口是3306 2.7、设置密码 2.8、设置服…

Python系列-字典

&#x1f308;个人主页: 会编程的果子君 ​&#x1f4ab;个人格言:“成为自己未来的主人~” ​ 目录 ​ 字典是什么 创建字典 查找key 新增/修改元素 删除元素 遍历字典元素 取出所有的key和value 合成的key类型 ​编辑 小结 字典是什么 字典是一种存储键值对的结…

开箱即用的Linux系统

经常会遇到这样的场景&#xff0c;临时需要演示一下linux环境&#xff0c;安装虚拟机耗时耗资源&#xff0c;如果有一个开箱即用的linux&#xff0c;而且还能包括主流的linux环境就好了。instantbox 是一个这样的项目&#xff0c;几秒内启动一个主流的 Linux 系统&#xff0c;支…

船员投保的数学模型(MATLAB求解)

1.问题描述 劳动工伤事故&#xff0c;即我们平时所说的“工伤事故”&#xff0c;也称职业伤害&#xff0c;是指劳动者在生产岗位上&#xff0c;从事与生产劳动有关的工作中发生的人身伤害事故、急性中毒事故或职业病。船员劳动工伤事故是指船员在船舶生产岗位上&#xff0c;从…

第七讲_JavaScript的Iterator和Generator

JavaScript的Iterator和Generator 1. Iterator1.2 for-of语法糖 2. Generator2.1 定义一个生成器函数2.2 常用的方法2.3 基本用法2.4 传参的用法2.5 异步的用法 1. Iterator ES6 中&#xff0c;默认的 Iterator 接口部署在数据结构的 Symbol.iterator 属性。一个数据结构只要拥…

字节跳动新一代云原生消息队列实践

作者&#xff1a;火山引擎云原生计算研发工程师&#xff5c;雷丽媛 上文我们了解了在字节跳动内部业务快速增长的推动下&#xff0c;经典消息队列 Kafka 的劣势开始逐渐暴露&#xff0c;在弹性、规模、成本及运维方面都无法满足业务需求。因此字节消息队列团队研发了计算存储分…

RISC-V指令集之RV32I

RISC-V指令集之RV32I 1 RV32I的寄存器2 RV32I的指令2.1 算术运算指令2.2 逻辑运算指令2.3 移位运算指令2.4 内存读写指令2.5 分支与跳转指令 本文属于《 RISC-V指令集基础系列教程》之一&#xff0c;欢迎查看其它文章。 1 RV32I的寄存器 如下图&#xff0c;列出了RV32I 寄存器…

力扣hot100 数据流的中位数 大小根堆

Problem: 295. 数据流的中位数 文章目录 思路复杂度&#x1f496; Code 思路 &#x1f468;‍&#x1f3eb; 参考 大根堆维护较小值&#xff08;堆顶即中位数&#xff09;&#xff0c;小根堆维护较大值&#xff08;堆顶可能是中位数之一&#xff09;维护小堆长度较长&#x…

idea搭建spring5.3.x源码环境

1.写在前面的话 碰到了不少想阅读或者学习spring源码的同学&#xff0c;但是第一步搭建这个源码阅读环境就能难倒了一大批人。下面我就以spring5.3.x这个源码分支&#xff0c;来具体演示一下搭建过程。 2. 下载源码 下载源码这一步&#xff0c;说实话&#xff0c;由于某些原…

grafana安装DevOpsProdigy KubeGraf 1.5.2

安装DevOpsProdigy KubeGraf需要安装kube-state-metrics 官方地址&#xff1a;https://github.com/kubernetes/kube-state-metrics/tree/release-2.10/examples/standard 查看k8s版本和kube-state-metrics对应版本&#xff1a; [rootmaster1 kube-state-metrics]# ll 总用量 …

并查集(高阶数据结构)

目录 一、并查集的原理 二、并查集的实现 2.1 并查集的初始化 2.2 查找元素所在的集合 2.3 判断两个元素是否在同一个集合 2.4 合并两个元素所在的集合 2.5 获取并查集中集合的个数 2.6 并查集的路径压缩 2.7 元素的编号问题 三、并查集题目 3.1 省份的数量 3.2 等…

R-kknn包-类别插值可视化绘制

前面的推文我们介绍了使用scikit-learn结合分类散点数据&#xff0c;构建机器学习分类模型并将模型结果可视化展示&#xff0c;具体链接如下&#xff1a; 机器学习和可视化还能一起这样用&#xff1f;Python教你全搞定。今天这篇推文&#xff0c;我们就使用R语言的kknn包进行类…

【2023地理设计组一等奖】基于机器学习的地下水仿真与时空分析

作品介绍 1 设计思想 1.1 作品背景 华北平原是我国最重要的粮棉产地之一,然而近年来农业的低效用水以及过度压采正逐步加剧其地下水资源的紧张性,为经济可持续发展带来重大风险。而地下水动态变化与人为干预、全球气候波动呈现出高度相关性,因此,地下水的仿真模拟对保障粮…

JMeter 下载、安装、启动

JMeter安装部署依赖Java环境&#xff0c;所以首先得安装JDK。 JDK下载JDK环境变量配置 ① 新建系统环境变量JAVA_HOME ② 编辑系统变量Path ③ 新建系统变量CLASSPATH变量 JMeter下载安装 Apache JMeter - Apache JMeter™ JMeter安装部署依赖Java环境&#xff0c;所以首…

sql注入之GETSHELL

2024.2.1 GETSHELL 利用SQL注入获取MYSQL数据库权限的要求: 文件读写基本要求: 是root用户最高权限 知道网站的绝对路径 文件读写注入的原理&#xff1a; 利用文件的读写权限进行注入&#xff0c;它可以写入一句话木马&#xff0c;也可以读取系统文件的敏感信息 文件读写…

Qt设计师中(没有现成的控件):如何添加QToolBar工具栏

1、在QtCreator设计师界面中,在MainWindow上右键,有“添加工具栏”菜单项 2、但只有在MainWindow上右键才有&#xff0c;在其它控件上方点击则没有&#xff0c;那么怎么在对话框上添加呢&#xff1f; 可以添加一个QWidget&#xff0c;然后手动在ui文件里把class改为QToolBar就…