(vue3)create-vue 组合式API

news2024/11/24 13:51:14

优势:

更易维护:组合式api,更好的TS支持

之前是选项式api,现在是组合式,把同功能的api集合式管理

复用功能封装成一整个函数

更快的速度

更小的体积

更优的数据响应式:Proxy

create-vue 新的脚手架工具,底层切换到了vite 

node -v检查node.js16.0以上

npm init vue@latest

vuter禁用(vue2的插件),启用volar

App.vue中script加上setup允许在script中直接编写组合式api

template中不再要求唯一根元素

组件不用注册

组合式API-setup

setup 执行时机比beforeCreate还早,获取不到this(以后不用this),this指向undefined

setup中数据或函数需要return,也麻烦,所以直接在script上写setup

<script setup>语法糖原理

 reactive()

接收一个对象,返回一个响应式对象

导入import {reactive} from ‘vue’            const state=reactive({})

reactive:只能接收对象。那简单类型?

ref()接收一个简单类型或者对象,返回一个响应式对象

import {ref} from ‘vue’             const count=ref(0)

在script区,需要加上.value,在template中,.value不用加

推荐:统一用ref()

computed计算属性函数

 异步请求,操作dom放watch

watch 侦听一个或多个数据的变化

导入import {watch} from ‘vue’ 

watch(
[count,nickname],//第一个参数位置放监视的ref对象
(newArr,oldArr)=>{//第二个参数位置放回调
  console.log(newArr,oldArr)
},{//第三个位置传入配置对象
immediate:true
deep:true
})
//(2) [0, 'lisa'] (2) [0, '张三']

immediate:true一进页面就触发

deep:true监视不到复杂对象内部变化,除非整个对象地址变了,比如一个新对象赋值给它,加上deep:true就监听得到了

如何精确侦听对象中某个属性

watch(()=>userInfo.value.age,//第一个参数处放函数,返回要侦听的具体属性
(newValue,oldValue)=>{
console.log(newValue,oldValue)})

注:作为watch函数的第一个参数,ref对象不需要添加.value

Vue3的生命周期

每调一个函数调配了一个小的生命周期逻辑

onmounted演示

以前往created里面写的直接写,以前写mounted里的写onmounted,可以写多次,不会冲突,按照顺序执行,以前写destroyed里的写onUnmounted

父子通信

vue2父传子,父给子绑属性,子props接收

vue3使用defineProps、defineEmits编译器宏

const props=defineProps({})子template中可以直接使用

vue3子传父子组件通过@绑定事件,子组件内部通过emit方法触发

const emit=defineEmits([‘changeMoney’]),然后template中某函数中emit(‘changeMoney’,5)然后父@changeMoney=“changeFn”

模版引用的概念

 通过ref标识获取真实的的dom对象或者组件实例对象

生成ref对象,通过ref标识绑定,.vaue即可访问到绑定的元素

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

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

相关文章

批量剪辑视频的秘密武器,添加SRT字幕并提升你的视频品质,高效剪辑的艺术

在如今的数字时代&#xff0c;视频内容的制作和分享变得越来越普遍。如果你是一个视频创作者&#xff0c;或者经常需要编辑和分享视频内容&#xff0c;那么我们为你带来了一款视频批量剪辑工具&#xff0c;让你轻松在固定位置添加字幕&#xff0c;打造专业级剪辑效果&#xff0…

五金零售批发商城小程序的作用是什么

五金产品在人们生活中不可或缺&#xff0c;无论需求高低&#xff0c;总归会购买&#xff0c;而每个城市的五金店也非常多&#xff0c;市场高应用度也促进了各个品牌商们增长&#xff0c;而在实际销售中&#xff0c;无论厂家还是门店商家都会面临一些痛点&#xff0c;如品牌宣传…

Spine Web Player教程

官方文档教程&#xff1a; Spine Web Player 报错&#xff1a; 1、Q:报Animation bounds are invalid XX错误&#xff1f; A:请校对cdn或者npm install的版本号是否与json资源内版本号一致。

SQL做流水号

SELECT REPLICATE(0, 3 - LEN(3)) 3 AS 流水号 SELECT REPLICATE(0, 5 - LEN(3)) 3 AS 流水号 SELECT REPLICATE(0, 8 - LEN(3)) 3 AS 流水号

公司新产品上线如何打出知名度?

任何一个新产品上线时都需要进行推广打出知名度&#xff0c;软文作为一种成本低效果留存时间长的营销方式能够让公司的新产品打出知名度&#xff0c;向潜在用户展示新产品的独特优势以及特性&#xff0c;下面就让媒介盒子告诉大家&#xff0c;新产品上线时&#xff0c;公司应该…

AIGC快速入门体验之虚拟对象

AIGC快速入门体验之虚拟对象 一、什么是AIGC二、AIGC应用场景2.1 代码生成2.2 图片生成2.3 对象生成 三、AIGC虚拟对象3.1 AIGC完全免费工具3.2 快速获取对象3.3 给对象取名3.4 为对象写首诗3.5 和对象聊聊天 一、什么是AIGC AIGC是生成式人工智能&#xff08;Artificial Intel…

每日一题——寻找右区间(排序 + 二分查找)

寻找右区间&#xff08;排序 二分查找&#xff09; 题目链接 理解题目 题目给定一个具有n行2列的二维数组intervals&#xff0c;对于intervals的每一行元素i&#xff0c;就表示一个区间数组&#xff0c;intervals[i][0]即这个区间数组的起始位置start&#xff0c;intervals[i…

JTS:09Touches 接触

这里写目录标题 版本JTS Touches边接触角点接触内部接触线段交叉顶点接触 版本 org.locationtech.jts:jts-core:1.19.0 链接: github JTS Touches 边接触 public void test00() {Coordinate[] coordinates1 new Coordinate[] {new Coordinate(1, 1), new Coordinate(1, 4),…

Gronwall‘s inequality

本文的主要了解下Gronwall不等式的两种形式&#xff0c;此不等式常常用来证明函数有界。 See 知乎&#xff1a; https://zhuanlan.zhihu.com/p/339358108

Vue底层术语解析以及存在关系

Vue底层术语解析以及存在关系 虚拟 DOM渲染函数Vue2Vue3 diff 算法抽象语法树&#xff08;Abstract Syntax Tree&#xff0c;AST&#xff09;关系 虚拟 DOM 可能都听说过虚拟dom &#xff0c;虚拟dom到底是Vue的啥&#xff0c;再此针对性讲解&#xff08;针对Vue官网简单化理解…

新手十分钟也能完成的Unity小游戏打砖块

由Siki学院打砖块游戏启发完成一个非常非常简单&#xff0c;纯新手也能十分钟做出来的小游戏——打砖块。 一.搭建场景 首先我们先在一个空白的3D项目中创建一个Plane平面&#xff0c;将其放置于世界中央位置&#xff0c;长宽设置为2&#xff0c;并为其添加一个材质Material&am…

掌握Go的运行时:从编译到执行

目录 一、Go运行编译简介Go语言的目标和设计哲学运行时环境编译过程小结 二、执行环境操作系统与硬件层系统调用&#xff08;Syscalls&#xff09;虚拟内存 Go运行时&#xff08;Runtime&#xff09;Goroutine调度器内存管理和垃圾收集网络I/O代码示例&#xff1a;Go运行时调度…

SQL:增、删、改、查 基本语句 Navicat建库(用法 + 例子)

文章目录 新建数据库新建表 增、删、改、查select 查找insert 添加delete 删除update 修改where 扩展 < > < > ! <> 比较运算符and or 逻辑运算符between...and... 介于..和..之间in 包含like 模糊查询is null 为空的 查询扩展order by 排序limit start coun…

7.网络原理之TCP_IP(下)

文章目录 4.传输层重点协议4.1TCP协议4.1.1TCP协议段格式4.1.2TCP原理4.1.2.1确认应答机制 ACK&#xff08;安全机制&#xff09;4.1.2.2超时重传机制&#xff08;安全机制&#xff09;4.1.2.3连接管理机制&#xff08;安全机制&#xff09;4.1.2.4滑动窗口&#xff08;效率机制…

朴素贝叶斯深度解码:从原理到深度学习应用

目录 一、简介贝叶斯定理的历史和重要性定义例子 朴素贝叶斯分类器的应用场景定义例子常见应用场景 二、贝叶斯定理基础条件概率定义例子 贝叶斯公式定义例子 三、朴素贝叶斯算法原理基本构成定义例子 分类过程定义例子 不同变体定义例子 四、朴素贝叶斯的种类高斯朴素贝叶斯&a…

LM小型可编程控制器软件(基于CoDeSys)笔记三十一:保持变量和非保持变量

所谓变量&#xff0c;就是用字母、数字和下划线组成的一个标识符。 按照数据类型的不同&#xff0c;变量可以分为标准类型和用户自定义类型。其中标准类型包括布尔型 &#xff08; BOOL &#xff09;、整型&#xff08; INT &#xff09;、实型&#xff08; REAL &#xff09…

【网络协议】TCP报文格式

1.源端口和目的端口 源端口字段占16比特&#xff0c;用来写入源端口号。源端口号用来标识发送该TCP报文段的应用进程。 目的端口字段占16比特&#xff0c;用来写入目的端口号。目的端口号用来标识接收该TCP报文段的应用进程。 2.序号 当序号增加到最后一个时&#xff0c;下…

【C语言_题库】舍罕网的失算?明明是我的失算!

test 舍罕王 失算 相传国际象棋是古印度舍罕王的宰相达依尔发明的。舍罕王十分喜爱象棋&#xff0c;决定让宰相自己选择何种赏赐。这位聪明的宰相指着 8 * 8 共 64 格的象棋说&#xff1a;“陛下&#xff0c;请您赏给我一些麦子吧。就在棋盘的第 1 格放 1 粒&#xff0c;第 2…

leetCode 198.打家劫舍 动态规划

198. 打家劫舍 - 力扣&#xff08;LeetCode&#xff09; 你是一个专业的小偷&#xff0c;计划偷窃沿街的房屋。每间房内都藏有一定的现金&#xff0c;影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统&#xff0c;如果两间相邻的房屋在同一晚上被小偷闯入&#…

机器学习---BP算法

1. 多级网络 层号确定层的高低&#xff1a;层号较小者&#xff0c;层次较低&#xff0c;层号较大者&#xff0c;层次较高。 输入层&#xff1a;被记作第0层。该层负责接收来自网络外部的信息。 第j层&#xff1a;第j-1层的直接后继层&#xff08;j>0&#xff09;&#xff…