【手写 Vue2.x 源码】第十篇 - 数组数据变化的观测情况
文章:【手写 Vue2.x 源码】第十篇 - 数组数据变化的观测情况
链接:https://brave.blog.csdn.net/article/details/128601406
内容:第十篇 - 数组数据变化的观测情况;
实现了数组数据变化被劫持后,已重写原型方法的具体逻辑;
数组各种数据变化时的观测情况分析;至此,数据劫持就全部完成了
【手写 Vue2.x 源码】第九篇 - 对象数据变化的观测情况
文章:【手写 Vue2.x 源码】第九篇 - 对象数据变化的观测情况
链接:https://blog.csdn.net/ABAP_Brave/article/details/128588578
内容:本篇,主要介绍了数组数据变化的观测情况:
实现了对象老属性值变更为对象、数组时的深层观测处理;
结合实现原理,说明了对象新增属性不能被观测到的原因,以及如何实现对象新增属性的数据观测;
【手写 Vue2.x 源码】第八篇 - 数组的深层劫持
文章:【手写 Vue2.x 源码】第八篇 - 数组的深层劫持
链接:https://brave.blog.csdn.net/article/details/128588563
内容:本篇,介绍了数组的深层观测实现,核心几个点如下:
- 在之前对数组类型的处理中,仅对当前数组进行了部分原型方法重写操作,当通过变异方法操作数组时,相当于实现了数组的单层数据劫持能力;
- 通过`observeArray`方法继续处理数组类型,对数组中每一项调用`observe`进行递归观测,实现了数组中嵌套结构的劫持:数组嵌套数组、数组嵌套对象;
注意:在 `observe`方法仅处理了对象类型,所以数组中的值类型是不会被观测的;
【手写 Vue2.x 源码】第六篇 - 数据代理的实现
文章:【手写 Vue2.x 源码】第六篇 - 数据代理的实现
链接:https://blog.csdn.net/ABAP_Brave/article/details/128575652
内容:第六篇 - 数据代理的实现;将 data 暴露到 vm._data 实例属性上;利用 Object.defineProperty 将 vm.xxx 操作代理到 vm._data 上;首先,先做一次代理,将`data`挂载到 `vm._data`下,这样 vm 实例就能够在外部通过`vm._data.message`获取到`data.message`;之后,再做一次代理,将`vm`实例操作`vm.message`代理到`vm._data`上,这样,外部就可以直接通过`vm.message`获取到`data.message`;
【手写 Vue2.x 源码】第五篇 - 数组的劫持
文章:【手写 Vue2.x 源码】第五篇 - 数组的劫持
链接:、https://blog.csdn.net/ABAP_Brave/article/details/128566890
内容:本篇主要介绍了 Vue 数据初始化流程中,数组类型的数据劫持,核心有以下几点:
出于对性能的考虑,Vue 没有对数组类型的数据使用 Object.defineProperty 进行递归劫持,而是通过对能够导致原数组变化的 7 个方法进行拦截和重写实现了数据劫持;
【手写 Vue2.x 源码】第四篇 - 对象的深层劫持
文章:【手写 Vue2.x 源码】第四篇 - 对象的深层劫持
链接:https://blog.csdn.net/ABAP_Brave/article/details/128566839
内容:对象深层劫持的实现
1. 通过`data = isFunction(data) ? data.call(vm) : data;`处理后的 data 一定是对象类型;
2. 通过`data = observe(data)`处理后的 data 就实现了数据的响应式(目前只有劫持)
3. observe 方法最终会返回一个 Observer 类
4. Observer 类初始化时,通过 walk 遍历属性
5. 对每一个属性进行 defineReactive(Object.defineProperty)实现对象属性的单层数据劫持
6. 在 defineReactive 中调用 observe,如果当前属性的值为对象类型,继续对当前对象属性进行观测(即递归执行步骤 3~5),实现对象属性的深层数据劫持
【手写 Vue2.x 源码】第三篇 - 对象的单层劫持
文章:【手写 Vue2.x 源码】第三篇 - 对象的单层劫持
链接:https://blog.csdn.net/ABAP_Brave/article/details/128555287
内容:第三篇 - 对象的单层劫持;本篇主要介绍了 Vue 数据初始化流程中,对象属性的单层劫持,核心处理:
1,data 为函数或对象两种类型的处理;
2,处理 data 函数中 this 的指向问题;
3,Observer 类,对数据进行观测;walk 方法,遍历 data 属性;
4,defineReactive 方法:利用 Object.defineProperty 实现数据劫持(单层劫持);
【手写 Vue2.x 源码】第二篇 - Vue 的初始化流程
文章:【手写 Vue2.x 源码】第二篇 - Vue 的初始化流程
链接:https://blog.csdn.net/ABAP_Brave/article/details/128555243
内容:第二篇 - Vue 的初始化流程;本篇主要介绍了 Vue 数据的初始化流程,核心点:
1,加载 Vue 时,通过 initMixin 方法,在 Vue 原型上扩展 _init 方法;
2,执行 new Vue 时,调用 Vue 原型方法 _init,暴露 options 选项、执行状态初始化和挂载流程;
3,initState 状态初始化:对状态的多种来源进行统一的初始化处理;
【手写 Vue2.x 源码】第一篇 - 使用 rollup 构建 Vue 环境
文章:【手写 Vue2.x 源码】第一篇 - 使用 rollup 构建 Vue 环境
链接:https://blog.csdn.net/ABAP_Brave/article/details/128538161
内容:第一篇-使用 rollup 构建 Vue 环境:
工程初始化、安装依赖、创建入口、配置 Rollup 、构建脚本、Vue 打包构建,vue 使用测试;
vue-framework-admin-0.0.14.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/102464029
vue-framework-admin-0.0.13.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/102338689
vue-framework-admin-0.0.12.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/102092006
vue-framework-admin-0.0.11.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/99623934
vue-framework-admin-0.0.10.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/99299824
vue-framework-admin-0.0.9.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/99286537
vue-framework-admin-0.0.8.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/99065313
vue-framework-admin-0.0.7.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/98942173
vue-framework-admin-0.0.6.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/98939127
vue-framework-admin-0.0.5.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/98884675
vue-framework-admin-0.0.4.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/98875481
vue-framework-admin-0.0.3.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/98871858
vue-framework-admin-0.0.2.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/98847046
vue-framework-admin-0.0.1.zip
一步一步实现中后台管理平台模板-基于Vue-cli3+Ant-Design-Vue,参考博文:https://blog.csdn.net/ABAP_Brave/article/details/98618939
webpack实例代码
博客中webpack实例的代码,已删除node_module文件夹,专栏地址:https://blog.csdn.net/column/details/25661.html
ActiveMQ-Topic订阅发布模式Demo
ActiveMQ-Topic订阅发布模式:参考博文:http://blog.csdn.net/ABAP_Brave/article/details/71211334
ActiveMQ-Queue点对点消息-Receive+Listener方式
ActiveMQ-Queues点对点消息-Receive+Listener方式:参考博文:http://blog.csdn.net/ABAP_Brave/article/details/53443725
SpringBoot-SpringData-懒加载
SpringBoot-SpringData-懒加载,博文地址:http://blog.csdn.net/ABAP_Brave/article/details/53035313
SpringBoot-SpringSecurity集成
SpringBoot-SpringSecurity集成,博文地址:http://blog.csdn.net/ABAP_Brave/article/details/53032694
SpringBoot-thymeleaf模板集成
SpringBoot-thymeleaf模板集成,博文地址:http://blog.csdn.net/ABAP_Brave/article/details/53005794
SpringBoot-SpringData-多数据源
SpringData多数据源实现,博文地址:http://blog.csdn.net/ABAP_Brave/article/details/52980885
SpringBoot-SpringData-ManyToOne
SpringBoot-SpringData-ManyToOne,博文地址:http://blog.csdn.net/ABAP_Brave/article/details/52850062
SpringBoot-SpringData-ManyToMany
SpringBoot-SpringData-ManyToMany,博文:http://blog.csdn.net/ABAP_Brave/article/details/52849827
SpringBoot-SpringData-oneToOne
SpringBoot-SpringData-oneToOne,博文:http://blog.csdn.net/ABAP_Brave/article/details/52845986
SpringBoot-SpringData-jpa集成
博文地址:http://blog.csdn.net/abap_brave/article/details/52804782
SpringBoot-Junit
SpringBoot-Junit代码,包含各种测试Demo
SpringBoot简单工程
SpringBoot简单项目,创建过程:http://blog.csdn.net/ABAP_Brave/article/details/52770743
ST LINK驱动+升级
ST LINK驱动+升级