![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
前端
文章平均质量分 69
波 吉
想做产品的小小前端
展开
-
ReactNative踩坑及技术方案总结(2022 持续更新中)
该文章旨在将近期学习的 ReactNative 所踩的坑、技术方案进行总结,减少重复造轮子、踩坑的时间。你所深陷的困境,可能别人早已轻而易举地解决,不要把脑力和时间浪费在这上面!原创 2022-09-21 07:52:38 · 1597 阅读 · 0 评论 -
我做了一个可视化生成ECharts代码的应用,再也不用去看复杂的文档了...(附项目源码)
关于老板让我改个柱状颜色时,我看着ECharts文档懵圈的故事...(一个可视化生成常用ECharts代码的工具,拿去用!)原创 2022-06-22 12:49:57 · 1263 阅读 · 2 评论 -
Vue3 | 实现精美的待办 | 02.输入框组件封装【附完整项目源码】
你好,我是波吉~《Vue3 | 实现精美的待办》系列文章,通过一个示例案例将 Vue3 知识点串联,附带完整项目源码,学起来!原创 2022-05-31 10:30:36 · 1033 阅读 · 1 评论 -
【Vue3 | 实现精美待办】01.项目启航
你好~我是波吉!今天更新的是《Vue3 | 实现精美的待办》系列文章,会带大家学一下Vue3。通过做一个小的待办项目,把 Vue3 中常用到的知识点串联起来~原创 2022-04-20 11:45:45 · 1611 阅读 · 3 评论 -
【JavaScript】图解原型
原型太抽象了,能不能讲个生活小场景帮我理解?当然可以~附上图解更好理解!原创 2022-04-07 09:40:22 · 200 阅读 · 0 评论 -
【Vue | 补洞 | 23】为何不推荐用 index 作为 key
Vue 中的 key,如同身份证一样起作用。但为何说 v-for 中尽量不用 index 作为 key 呢?原创 2022-03-29 08:58:05 · 311 阅读 · 0 评论 -
【Vue | 补洞 | 22】Vue2 监测数据原理(数组)
上文提到 Object.defineProperty 无法监测数组变化,那么 Vue 是如何解决该问题?原创 2022-03-28 15:20:33 · 2319 阅读 · 0 评论 -
【Vue | 补洞 | 21】Vue2 监测数据原理(含简单实现)
Vue 的核心在于:数据更新会引起视图更新。前提就在于,Vue 需要知道数据何时发生了变化。它是如何监测到的?原创 2022-03-28 06:30:00 · 644 阅读 · 2 评论 -
【Vue | 补洞 | 20】路由的 history 和 hash 模式
用一张表帮你区分出路由 history 和 hash 模式的区别!原创 2022-03-27 20:07:01 · 1158 阅读 · 0 评论 -
【Vue | 补洞 | 19】路由守卫
防疫人员,尽职尽责地守护最后一道防线。路由守卫的作用,也在于此。原创 2022-03-27 10:00:15 · 1037 阅读 · 0 评论 -
【Vue | 补洞 | 18】编程式路由导航
不借助 <router-link> 进行路由跳转操作,更加灵活和方便!原创 2022-03-26 08:01:17 · 375 阅读 · 0 评论 -
【Vue | 补洞 | 17】路由传参 & 路由prop配置
路由之间,如何传参?如何接受参数?如何通过 props 配置项,简化接收参数的操作?原创 2022-03-25 11:46:03 · 1024 阅读 · 0 评论 -
【Vue | 补洞 | 16】嵌套路由
路由也可以有后代!通过 children 配置其嵌套路由,子子孙孙无穷尽也。原创 2022-03-25 08:59:55 · 169 阅读 · 0 评论 -
【CSS】移动端1px问题与viewport
什么是经典的 “移动端 1px” 问题?为何会在不同分辨率下呈现不同粗细?viewport 是如何解决该问题?原创 2022-03-24 08:54:08 · 429 阅读 · 0 评论 -
【Vue | 补洞 | 15】路由和路由器,傻傻分不清
一个保安的故事,让你再也不混淆路由和路由器!原创 2022-03-23 12:34:06 · 760 阅读 · 0 评论 -
【Vue | 补洞 | 14】使用less全局变量
实现在 Vue 中通过全局样式文件,在任意组件均可调用样式变量,统一样式风格!原创 2022-03-23 06:30:00 · 955 阅读 · 1 评论 -
【Vue | 补洞 | 13】三种插槽的应用
用生活小常识,理解三种插槽的作用与应用场景!原创 2022-03-22 10:01:48 · 1548 阅读 · 0 评论 -
【Vue | 补洞 | 12】使用 $watch 实现灵活监听
$watch 实现灵活配置 watch 的时机,满足业务逻辑复杂的监听场景!原创 2022-03-22 08:41:00 · 659 阅读 · 0 评论 -
【Vue | 补洞 | 11】Mixin混入
通过Mixin混入,将公共的逻辑抽离并封装,优雅地组织你的代码结构!原创 2022-03-20 09:55:20 · 445 阅读 · 0 评论 -
【Vue | 补洞 | 10】自定义指令
通过自定义指令,实现对 Dom 元素的操作封装和复用!原创 2022-03-19 18:36:58 · 476 阅读 · 0 评论 -
【Vue | 补洞 | 09】数据代理
Vue通过数据代理,让我们用简洁的语法调用响应式数据!欢迎持续关注新系列文章 [Vue 补洞] 系列,用久了 Vue2 总有一些遗漏的知识点,一起通过该系列文章一起查漏补缺!原创 2022-03-19 08:43:36 · 181 阅读 · 0 评论 -
【Vue | 补洞 | 07】Vue 中 this 的使用原则
Vue2 中使用 this,遵循这两个基本原则就不会出错!欢迎持续关注新系列文章 [Vue 补洞] 系列,用久了 Vue2 总有一些遗漏的知识点,一起通过该系列文章一起查漏补缺!原创 2022-03-18 11:31:55 · 945 阅读 · 0 评论 -
【Vue | 补洞 | 06】绑定键盘事件
五个常用的键盘事件,方便用户操作!本文讲解Vue自带的键盘事件、及自定义键盘事件的使用。原创 2022-03-17 08:54:19 · 1800 阅读 · 0 评论 -
【Vue | 补洞 | 05】消息订阅与发布
使用 pubsub 的消息订阅机制,实现任意组件间通信!除了 Vuex 和 全局事件总线,本文的 pubsub 是实现组件间通信的第三种方式。原创 2022-03-15 11:49:20 · 805 阅读 · 0 评论 -
【Vue | 补洞 | 04】全局事件总线
注册一个 $bus,使用 `全局事件总线` 实现任意组件间通信!除了 Vuex,本文的全局事件总线是实现组件间通信的第二种方式。原创 2022-03-14 21:00:13 · 1204 阅读 · 0 评论 -
【Vue | 补洞 | 03】Vuex 模块化编码
vuex 通过 namespaced 进行模块化编程!在大型项目中,把所有的数据都堆放在一个仓库里总不是好事;好在这个仓库里提供了一些收纳盒,每个收纳盒存放独立的数据和逻辑,代码干净,方便维护!原创 2022-03-07 10:26:52 · 615 阅读 · 0 评论 -
【Vue | 补洞 | 02】mapState 一行代码获取 vuex 所有数据
mapState 一行代码获取 vuex 中 state 的数据!欢迎持续关注新系列文章 [Vue 补洞] 系列,用久了 Vue2 总有一些遗漏的知识点,通过该系列文章一起查漏补缺!原创 2022-03-03 16:23:50 · 1080 阅读 · 0 评论 -
【Vue | 补洞 | 01】Vuex 环境搭建及基本使用
用惯了脚手架的你,是否还记得搭建 Vuex 环境时要用 Vuex.Store ?本期讲解 Vuex 环境从0到1的搭建,也欢迎持续关注新系列文章:[Vue 补洞] 系列,用久了 Vue2,总有一些遗漏的知识点,通过该系列文章一起更深入理解一些看似简单的点吧!原创 2022-03-02 09:48:04 · 332 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 11】find 函数 - 寻找一个符合条件的值
本期阅读时长预计8分钟,可以学习到在浏览器环境不支持ES6的情况下,实现一个 find 函数原创 2022-02-21 14:15:17 · 547 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 10】clone 深拷贝(考虑多种数据类型)
本篇预计阅读时长10分钟,讲解了 xe-utils 中 clone 深拷贝源码的实现,支持多种数据类型。原创 2022-02-17 16:16:53 · 790 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 09】range 序号列表生成函数
本期源码可以学习到:利用移位符巧妙地实现对参数的处理原创 2022-01-26 09:45:32 · 288 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 08】isDocument(涉及DOM的 nodeType)
本期源码非常简单!通过 isDocument 判断是否为 document 对象,也复习一下我们较少用的 nodeType 属性原创 2022-01-24 13:14:51 · 682 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 07】isMatch 判断属性中的键值是否包含在对象中
isMatch 方法判断属性中的键值是否包含在对象中原创 2022-01-24 11:56:23 · 296 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 06】isEqual 深度比较两个值是否相等
1. 背景 JavaScript 中包含基础的值类型,引用类型及其他类型。 关于值类型和引用类型的区别,若有不理解的可以看这篇文章补课 【JavaScript】深拷贝与浅拷贝 ,这里就不再赘述。 当要判断 引用类型 时,以对象举例,则需要 遍历其所有的属性 来进行比较,只有属性对应的值完全相等,才能说两个对象相等,这在源码中如何实现呢?2. 源码解析2.1 xe-utils 源码 先来看看 xe-utils 的源码,其中为了可扩展性,增加了 自定义判断函数; 如果你觉得过于复杂,可原创 2022-01-23 12:24:58 · 439 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 05】判断ES6中的新类型
1. 背景 对于 isSymbol、isMap 等新特性中才有的类型的判断时,比起普通类型判断,源码中会多了对当前环境是否支持新类型的判断。 其中用到类似思路的有如下函数:isFormDataisSymbolisMapisWeakMapisSetisWeakSet…2. 源码解析以 isSymbol为例,如下判断思路为:先判断当前环境是否支持 Symbol 类型,若不支持则会返回 undefined 常量若支持 Symbol,则判断是否拥有 isSymbol 方法,若有则原创 2022-01-20 20:56:01 · 496 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 04】isEmpty 判断是否空对象
1. 背景 初看该函数名称时,我的理解是判断是否为 null 对象;但当看到官方文档中的用法与源码后,发现其确实是极妙的实现。// 官方文档中的示例用法XEUtils.isEmpty([11, 22]) // falseXEUtils.isEmpty({a:null}) // falseXEUtils.isEmpty(null) // trueXEUtils.isEmpty({}) // trueXEUtils.isEmpty([]) // true 也就是,null、{}、[] 都会原创 2022-01-20 08:56:58 · 377 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 03】isPlainObject | isTypeError
xe-utils 源码第三期:通过 constructor 来更为准确地判断 JavaScript 中的一些实例对象。原创 2022-01-18 20:12:41 · 246 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 02】判断Array类型
上一期讲了基础类型判断,唯独少了 Array 的判断,本期介绍源码中对 Array 类型的判断,并保证了兼容性和扩展性原创 2022-01-17 19:42:22 · 564 阅读 · 0 评论 -
【源码阅读 | xe-utils源码 | 01】判断基础类型
xe-utils工具库的源码解读,本期为Base篇:判断基础类型原创 2022-01-16 12:43:34 · 303 阅读 · 0 评论 -
【源码阅读 | 04】update-notifier 检查包更新
1. 场景 用于将当前 package.json 中的包与包管理工具库(如 npm)进行比对,若存在可以更新的包,则进行提示。2. 使用1)安装$ npm install update-notifier2)使用const updateNotifier = require('update-notifier');const pkg = require('./package.json');const notifier = updateNotifier({pkg});notifier.not原创 2021-12-16 21:03:55 · 1053 阅读 · 1 评论