vue3响应式api

响应式api------compositon api

setup:

  1. 不要再想this 问题
  2. 执行是在beforeCreated之前

beforeCreated:也就是创建了一个实例

created:挂载了数据

  1. 通过形参props接收,只读

以后所有代码都写到setup中

判断是否只读:isReadonly

挂载到template中:

  1. 挂载到this 上的
  2. 或者windows上的一些全局对象

setup return的数据能在template中使用

局部组件:导入-注册-调用

全局组件:Vue.component Vue.use

状态 ref

计算属性computed

计算缓存

方法method

直接定义一个方法,然后return出去

setup会产生一个闭包:状态、计算属性都给存起来,通过作用域链拿过来使用。setup只会执行一次,只会在初次渲染时执行;改值->视图更新,但视图更新时setup不会再执行。跟react的区别:每次组件更新都会产生新的私有上下文,产生好几个闭包每个从头走一遍。

data computed methods 一项项选项

解构出对应函数

状态reactive

reactive:对整个对象做代理和劫持

get/set/deleteProperty/has/ownKeys

toRefs&toRef

监听器 watch

过滤器:各种限制:语法、传参,性能也没有比方法好多少

watchEffect:

初渲染会执行一次

watch中要避免死循环

总结:

如何创建状态,属性+监听器+普通方法,核心响应式系统

toRef/toRefs

从setup 到属性 到状态 计算属性 监听器

相关推荐
Hao_Harrision17 小时前
50天50个小项目 (React19 + Tailwindcss V4) ✨ | DrawingApp(画板组件)
前端·react.js·typescript·tailwindcss·vite7
dly_blog17 小时前
Vite 原理与 Vue 项目实践
前端·javascript·vue.js
计算机毕设VX:Fegn089518 小时前
计算机毕业设计|基于springboot + vue汽车销售系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·汽车·课程设计
仅此,18 小时前
前端接收了id字段,发送给后端就变了
java·前端·javascript·spring·typescript
Lovely Ruby18 小时前
[前端] 封装一下 echart 6,发布到 npm
前端·npm·node.js
BD_Marathon18 小时前
NPM_常见命令
前端·npm·node.js
绿鸳18 小时前
12.17面试题
前端
Huanzhi_Lin18 小时前
禁用谷歌/google/chrome浏览器更新
前端·chrome
咸鱼加辣18 小时前
【前端的crud】DOM 就是前端里的“数据库”
前端·数据库
kong790692818 小时前
环境搭建-运行前端工程(Nginx)
前端·nginx·前端工程