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 ...
随机推荐
- C# 事件 初学
1.事件是可以动态添加和删除操作的,如下>>> 添加: ctr.Click+=ctr_Click; 删除:ctr.Click-=ctr_Click; 2.同一控件相同事件可累加不同事 ...
- find . -name "*.php" -execdir grep -nH --color=auto foo {} ';'
find . -name "*.php" -execdir grep -nH --color=auto foo {} ';'
- java相关部分配置
一.mybatis逆向工程 ① generator.properties jdbc.driverLocation=D:/testDir/Maven/repository_g/mysql/mysql-c ...
- C语言和C++的区别与联系(详细)
文章转自:https://blog.csdn.net/cherrydreamsover/article/details/81835976 在学习了C语言和C++之后,这两者之间的区别我们需要仔细的捋一 ...
- C# IDataReader转换为Json
1 /// <summary> 2 /// IDataReader转换为Json 3 /// </summary> 4 /// <param name="dat ...
- 2021SWPUCTF-WEB(二)
ez_unserialize 不知道在哪,御剑扫叭 有一个robots.txt 一道反序列化好像是 分析代码应该是admin=admin.passwd=ctf即可输出flag < ...
- What is Weight Lifting?
Weight lifting is the process of lifting items of great mass in order to increase the muscle size an ...
- django 批量提交
https://www.cnblogs.com/lbzbky/articles/11792545.html
- SpringBoot笔记--Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.报错的解决
问题描述 写了SpringBoot代码之后,运行不出来结果,报出这样的一个错误:Failed to configure a DataSource: 'url' attribute is not spe ...
- TCP 三次握手,给我长脸了噢
大家好,我是小富~ 个人资源分享网站:FIRE 本文收录在 Springboot-Notebook 面试锦集 前言 之前有个小伙伴在技术交流群里咨询过一个问题,我当时还给提供了点排查思路,是个典型的八 ...