Vue学习笔记六--Vue3学习

1、Vue3的优势

2、创建Vue3工程

前提:node -v 查看node版本,需要在16.0及以上

创建命令 npm init vue@latest,先安装create-vue然后创建项目

然后执行npm run dev 提示

sh: vite: command not found,需要执行npm i重新安装依赖,之后再执行npm run build,再执行 npm run dev 可以正常运行了

更换npm淘宝源

  • 首先打开命令提示符或者终端。

  • 输入以下命令来查看当前的镜像源设置:npm config get registry。如果显示为默认值 https://registry.npmjs.org/,则说明已经使用了官方镜像源。

  • 若想切换到其他镜像源,可以通过运行以下命令将镜像源修改为淘宝 NPM 镜像(也称为 cnpm):npm config set registry https://registry.npm.taobao.org/.

  • 确保新的镜像源生效后,再次运行 npm config get registry 命令来验证是否成功更改

升级node及npm包

3、组合式Api

4、生成响应式数据--ref与reactive

reactive和ref

在模板中读取数据: 不需要.value,直接:<div>{``{xxx}}</div>

复制代码
//ref加工之后生成一个 RefImpl引用对象,该对象的原型对象上可以发现,底层其实还是Object.defineProperty通过
      // get 和set实现的响应式数据
 因此改变数据需要用到RefImpl引用对象中的value属性

5、计算属性--computed

6、watch函数

复制代码
/* 情况三:监视reactive定义的响应式数据
			若watch监视的是reactive定义的响应式数据,则无法正确获得oldValue!!
			若watch监视的是reactive定义的响应式数据,则强制开启了深度监视 
*/
watch(person,(newValue,oldValue)=>{
	console.log('person变化了',newValue,oldValue)
},{immediate:true,deep:false}) //此处的deep配置不再奏效

7、生命周期函数

7、toRef与toRefs

8、父子通信

9、其他

获取dom对象或组件实例对象

defineExpose函数

数据传递

defineOptions

<script setup>是在单文件组件 (SFC) 中使用组合式 API 的编译时语法糖。

但是,这里存在一个问题,当我们想使用 mounted钩子函数时,会报错,因为 <script setup>会将所有的代码都放在 setup函数中,而 mounted是在 setup函数之后执行的,所以会报错。

此外某些场景缓存页面数据,可能需要设置组件名称 name。都无法在setup函数中来写

所以有了defineOptions,来定义OptionsAPI选项,props、emits/expose/slots除外,因为这些可以通过definexxx来做到

defineModel

需要重新启动这个项目才能生效

10、Pina

不要对counterStore进行解构,否则会丢失数据的响应式

相关推荐
JSON_L1 分钟前
Vue 正在热映模块
前端·javascript·vue.js
Eli_Optics1 小时前
《通信原理》学习笔记——第六章
笔记·学习
Lethe1 小时前
类小红书的社交卡片瀑布流
前端·vue.js
嵌入式小小怪下士1 小时前
ATF 运行时服务
笔记·lx2160/lx2080
袋鱼不重1 小时前
手把手搭建Vue轮子从0到1:4. Reactivity 模块的实现
前端·vue.js·源码
江城开朗的豌豆3 小时前
Vue做SEO太难?6年老司机带你轻松搞定!
前端·javascript·vue.js
饭碗的彼岸one3 小时前
重生之我在10天内卷赢C++ - DAY 1
linux·开发语言·c++·经验分享·笔记·学习方法
江城开朗的豌豆3 小时前
Vue性能优化实战:让你的应用快如闪电⚡
前端·javascript·vue.js
ouliten3 小时前
cuda编程笔记(11)--学习cuBLAS的简单使用
笔记·学习·cuda
劫大大3 小时前
前端页面导出pdf功能,完美解决分页截断问题,添加页眉页脚
前端·vue.js