vue3.0
- https://www.yuque.com/gdnnth/vue-v3
- http://www.liulongbin.top:8085/#/
- https://www.yuque.com/woniuppp/vue3/intro
一,性能
二,什么是Vite
Vite是vue作者开发的一款试图取代webpack的工具
其原理是利用ES6的import会发送请求去加载文件的特性
拦截这些请求做一些预编译,省去webpack的冗余打包时间
1、全局安装vite:npm install create-vite-app -g (装不上的话以管理员身份运行去装)
mac电脑会报没有权限,加sudo即可
2、创建项目(使用vite,不是脚手架):npx create-vite-app project-name (创建项目过程比脚手架快多了,因为没有依赖包)
3、cd project-name -> npm install -> npm run dev
- 定义响应式数据
import { ref reactive } from 'vue'
1. ref函数和reactive函数创建响应式数据的区别 (ref只能创建单一的数据,如果想用数组、对象的话用reactive) https://www.cnblogs.com/jinzhenzong/p/12778729.html
- 组合api
1. 定义的数据,方法可以抽成一个function函数,函数内部return出去数据,方法,在setup()函数中导入即可
2. compositionApi 和 optionApi 组合使用,因为vue3使用的是compositionApi,但是运行机制还是最终注入到optionApi(还是vue2的形式)
- setup函数的执行时机
- vue2和vue3的区别

- reactive 和 ref 的区别


1 emplate>
2
3 <script>
4 import { ref, reactive, toRefs } from "vue";
5
6 export default {
7 setup() {
8 const { name, changeName } = change();
9 const { state, add } = letting();
10
11 return {
12 name,
13 changeName,
14 ...toRefs(state),
15 add,
16 };
17 },
18 };
19
20 const change = () => {
21 let name = ref("范顺是通过ref创建出来的");
22
23 const changeName = () => {
24 name.value = "hahha";
25 console.log(name);
26 };
27 return { name, changeName };
28 };
29
30 const letting = () => {
31 const state = reactive({ age: 18 });
32
33 const add = () => {
34 state.age += 1; //直接改变reactive创建出来的响应式数据是不行的,需要用到toRefs()
35 console.log(state);
36 };
37
38 return { state, add };
39 };
40 </script>
- shallowReactive - 浅层响应式数据对象
- shallowRef - 创建浅层的 ref
我们都知道reactive创建的是复杂的数据格式,ref是单一的数据格式,这两个都是通过ES6 的proxy实现的,当我们使用reactive创建对象复杂的数据结构式,例如(对象嵌套对象),当我们改变某一个值得时候其实是通过diff算法中的递归实现的,每一个小对象都是proxy对象,这样的话会很消耗性能。
shallowReactive创建出来的浅层响应式数据对象,例如复杂的数据结构,对象嵌套对象,当我们改变第一层的对象时,只有第一层是proxy对象,其余全是普通对象,并且后面的对象也会跟着改变,当我们不改变第一层对象的时候,直接去改变后续的对象的时候是改变不了的
shallowRef和上面所述一样,只不过vue监听的是 .value
vue3.0的更多相关文章
- 预计2019年发布的Vue3.0到底有什么不一样的地方?
摘要: Vue 3.0预览. 原文:预计今年发布的Vue3.0到底有什么不一样的地方? 作者:小肆 微信公众号:技术放肆聊 Fundebug经授权转载,版权归原作者所有. 还有几个月距离 vue2 的 ...
- 纯小白入手 vue3.0 CLI - 3.3 - 路由的导航守卫
vue3.0 CLI 真小白一步一步入手全教程系列:https://www.cnblogs.com/ndos/category/1295752.html 尽量把纷繁的知识,肢解重组成为可以堆砌的知识. ...
- 纯小白入手 vue3.0 CLI - 3.2 - 路由的初级使用
vue3.0 CLI 真小白一步一步入手全教程系列:https://www.cnblogs.com/ndos/category/1295752.html 尽量把纷繁的知识,肢解重组成为可以堆砌的知识. ...
- 纯小白入手 vue3.0 CLI - 3.1 - 路由 ( router )
vue3.0 CLI 真小白一步一步入手全教程系列:https://www.cnblogs.com/ndos/category/1295752.html 尽量把纷繁的知识,肢解重组成为可以堆砌的知识. ...
- 纯小白入手 vue3.0 CLI - 2.7 - 组件之间的数据流
vue3.0 CLI 真小白一步一步入手全教程系列:https://www.cnblogs.com/ndos/category/1295752.html 尽量把纷繁的知识,肢解重组成为可以堆砌的知识. ...
- VUE3.0升级与配置(跨域、全局scss变量等)
1.检查本机vue版本 vue -V 2.升级vue3.0命令 npm install -g @vue/cli 3.创建完项目后,在项目根目录新增vue.config.js文件,插入代码(简洁) mo ...
- 使用vue3.0和element实现后台管理模板
通过自己所学的这段时间,利用空余时间,使用vue3.0脚手架搭建的一个关于后台的管理模板,所实现功能也是模仿一个后台的界面,数据分为两种存放,一种是直接存储到mlab,这里的数据是存放这登录注册,只有 ...
- 纯小白入手 vue3.0 CLI - 2.6 - 组件的复用
vue3.0 CLI 真小白一步一步入手全教程系列:https://www.cnblogs.com/ndos/category/1295752.html 我的 github 地址 - vue3.0St ...
- 纯小白入手 vue3.0 CLI - 2.5 - 了解组件的三维
vue3.0 CLI 真小白一步一步入手全教程系列:https://www.cnblogs.com/ndos/category/1295752.html 我的 github 地址 - vue3.0St ...
- 纯小白入手 vue3.0 CLI - 2.4 - 新组件 Forms.vue 中学习表单
vue3.0 CLI 真小白一步一步入手全教程系列:https://www.cnblogs.com/ndos/category/1295752.html 我的 github 地址 - vue3.0St ...
随机推荐
- python学习记录(二)-特殊函数
闭包函数 def outer(): var = 100 def inner(): nonlocal var var += 200 print(var) return inner res = outer ...
- 西电oj245 成绩统计 结构体数组使用
#include<stdio.h> struct student{ //定义一个结构体数组 int num; char name[11]; float g1; float g2; floa ...
- mysql根据一个表更新另外一个表
-- 语法:update table_1 t1,table_2 t2 set t1.column = t2.column where t1.id = t2.pid; UPDATE house_test ...
- selenium 模拟鼠标滚轮,滚动到可见的选项
self.wrap_driver.move_to_element(locator=const_xpath.monitor_select) #鼠标移动到某个区域target = self.driver. ...
- jenkins freestyle deploy web
gitlab connection 选择定义好的gitlab仓库 参数化构建过程 git参数 名称 branch 描述 自定义 参数类型 分支 默认值 $branch 选项参数 名称 Status 选 ...
- 7. 基础增删改 - 使用Portal Webapi进行会员信息的增删改
我们可以通过使用Portal Web API在Portal页面中跨所有Microsoft Dataverse表执行创建.更新和删除操作,下面我们就一起来看一下如何通过使用AJAX函数来进行操作. AJ ...
- maui BlazorWebView+本地html (vue、uniapp等都可以) 接入微信sdk 开发 Android app
首先添加微信sdk的绑定库 nuget 包:Chi.MauiBinding.Android.WeChat 项目地址:https://github.com/realZhangChi/MauiBindin ...
- Linux 命令之 tar 操作符
tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个 ...
- 帮你积累音视频知识,Agora 开发者漫游指南正式启航
"运气是设计的残留物."--John Milton 如果玩过<全面战争:中世纪 II>,或者读过 John Milton 书的人,可能对这句话有印象.我们发现,很多小伙 ...
- JOI 简单题选做
就是把洛谷上评分为紫的题做了一下(汗) 前两道题没做出来,暴露了自己在 dp 上的短板. イベント巡り 2 一开始想到贪心,但发现我们只要选 \(k\) 个即可,所以可以尝试一些更劣但是编号更小的做法 ...