![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Vue3
文章平均质量分 67
前端imber
这个作者很懒,什么都没留下…
展开
-
vue3设计思想和理念
Vue设计思想Vue3.0更注重模块上的拆分,在2.0中无法单独使用部分模块。需要引入完整的Vuejs(例如只想使用使用响应式部分,但是需要引入完整的Vuejs), Vue3中的模块之间耦合度低,模块可以独立使用。 拆分模块Vue2中很多方法挂载到了实例中导致没有使用也会被打包(还有很多组件也是一样)。通过构建工具Tree-shaking机制实现按需引入,减少用户打包后体积。 重写APIVue3允许自定义渲染器,扩展能力强。不会发生以前的事情,改写Vue源码改造渲染方式。 扩展更方便原创 2022-05-29 09:55:44 · 433 阅读 · 0 评论 -
Vue3之Diff算法源码分析
为什么使用this能调用Vue方法内部使用了bind把this指向了instance.proxy虚拟dom和key和diffpatch->如果是n1、那么进行更新操作、如果是null、mount操作有key使用patchKeyedChildren方法、取小长度循环比较、然后patch更新、然后对比如果旧节点更多、直接unmount、新节点更多创建新节点const patchUnkeyedChildren = ( c1: VNode[], c2: VNodeArrayChild原创 2021-10-31 22:01:18 · 314 阅读 · 1 评论 -
Vite+Vue3项目文件分析
shims-vue.d.tsvue不是js,所以需要去适配告诉ts,.vue文件是干啥的declare module '*.vue' { import { DefineComponent } from 'vue' const component: DefineComponent<{}, {}, any> export default component}因为TS直接引用第三方JS库的时候,虽然可以用,但是是没有类型检查,所以我们需要做一个声明文原创 2021-08-16 15:16:27 · 759 阅读 · 0 评论 -
Vue3 + Vite2 + Typescript + vue-router4 + sass + vuex4 + Element-plus(最新的技术,最详细的搭建)
搭建一个 Vue3 + Vite2 + Typescript + vue-router4 + sass + vuex4 + Element-plus 的项目package.json:{ "name": "my-vue-app", "version": "0.0.0", "scripts": { "dev": "vite", "build": "vue-tsc --noEmit && vite build", "serve": "vite previ.原创 2021-08-13 16:34:01 · 1200 阅读 · 0 评论