- 博客(5)
- 收藏
- 关注
原创 pinia 源码解析
上一篇我们已经大致了解了 pinia 的相关使用方法 以及 API 和如何使用 pinia 的插件, 这一次我们来看一下 pinia 在源码上是如何处理的, 这里我拆分出来了源码中的关键方法,将源码中 对 vue2 和 vue3 的考虑 ,开发模式 和 生产模式 的考虑, 热更新,CSR 和 SSR 以及插件 和 API 的注入等 诸多情况进行了删减,这里我们只考虑 vue3的情况, 把基础架构搭建了一下。
2023-03-16 10:43:17
246
原创 Pinia 上手指南
pinia 是一种全局状态管理工具,其底层其实是对 Vue 自身状态的一种高度封装,本期我们主要讨论 pinia 配合 Vue3 的使用, 在 vue3 中, pinia的全局状态也是基于 reactive 达成的一种 代理对象,
2023-03-16 10:40:09
576
原创 js 数组方法splice底层原理(重构)
splice 方法 是一种数组方法 splice方法的所有操作会改变原数组,返回值是删除的原数组中的数据 传一个参数的时候,是从这个参数位置的下标开始,删除数组后面的所有数组 传两个参数的时候,第二个参数是删除的个数,是从第一个参数位置开始删除对应的个数 传三个参数的时候,从第三个参数开始,是在删除位置依次插入第三个参数开始的数据,先删除,再插入,哪里删除,哪里插入 当不传入参数的时候,原数组不发生改变,返回值是undefined 以下为底层原理: Array.prototype.mySpl
2021-10-16 15:22:57
865
原创 js块作用域
书写在块语句中的代码是如何预解析的? 我们都知道 JS 中,在 ES6 之前 作用域分为全局作用域和函数作用域,函数作用域也是块作用域的一种,虽然这种情况我们平时很少用到,官方API 文档也没有说明,但是在实际的过程当中能够发现以下规律: 这里所讲的块作用域的情况是指{ }单独应用的时候 当在块语句内引用的时候 1.将函数写在块语句中,命名函数只会预解析,不会预赋值,只有在执行块语句的时候,赋值函数 2.如果块语句中出现变量和函数名相同的情况时,执行块语句,最后打印的是正常顺序赋值的结果 3
2021-10-15 20:26:48
187
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人