会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
爱吃巧克力的狗
博客园
首页
新随笔
联系
订阅
管理
[置顶]
vue-clearcss 高效清除vue中无用的css
摘要: vue-clearcss 会找到你css中没有使用的css样式,是否删除由使用者自己决定,工作起来就像eslint ###为什么要用它? 一个vue文件在长期迭代中css会越来越冗余,它不像html和js那么好删除,html你要是多了页面会展示,js你只要看下它用的地方就可以了 然而css比如scs
阅读全文
posted @ 2021-08-30 23:22 爱吃巧克力的狗
阅读(2993)
评论(1)
推荐(0)
2025年3月24日
wangeditor自己实现关键字高亮
摘要: 工作中用到了这个编辑器,本以为关键字高亮这个如此高频的功能它肯定是实现了的,结果竟然没有!!网上找了一圈也没有,好家伙我排期也没排这块时间啊,所以只能自己加班写一个了。 方案简析 wangeditor底层其实使用的是Slate这个编辑器,你要自己实现此功能,本质上就是调用Slate对应的方法。 主要
阅读全文
posted @ 2025-03-24 15:27 爱吃巧克力的狗
阅读(189)
评论(0)
推荐(0)
2024年5月25日
formilyjs/element-plus 设置中文无效的原因
摘要: 工作中用到了这个库,但是使用国际化设置中文却不行,所以查看源码 发现了不行的原因 直接说结论,不浪费大家时间,不是使用方法有问题,就是这个库自身的bug,想要设置中文,要么改源码 要么直接使用原生element 原理分析 先看看element是如何设置成中文的 这是官网的写法,那么看看这个组件内部是
阅读全文
posted @ 2024-05-25 19:36 爱吃巧克力的狗
阅读(455)
评论(0)
推荐(0)
2023年12月9日
unplugin-auto-import 插件源码的简单实现
摘要: 工作中用到了这个插件 好奇是通过ast还是什么方式实现的判断代码是否调用了某个库,所以就研究了下 准备工作 1 一个vite项目 安装了该插件,预设只有vue import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vu
阅读全文
posted @ 2023-12-09 23:59 爱吃巧克力的狗
阅读(129)
评论(0)
推荐(0)
2022年12月1日
vue3状态流转记录
摘要: 刚用vue3的时候觉得习惯了之后非常爽,比vue2比起来要灵活,ref、reactive等新api写几个页面也基本理解用法了。 但是逐渐深入后发现遇到一些疑难问题的时候,排查起来非常困难,其依赖收集比起vue2复杂太多,我在写pinia插件的时候尤其痛苦, 感觉心智负担比原来重多了,所以这篇文章记录
阅读全文
posted @ 2022-12-01 17:35 爱吃巧克力的狗
阅读(128)
评论(0)
推荐(0)
2022年11月29日
pinia源码解读四(常用工具方法)
摘要: ###解读一些经常使用的方法 $subscribe和$onAction subscribe和onAction都是执行addSubscription方法只是subscribe多了一步对state进行watch $subscribe(callback, options = {}) { const rem
阅读全文
posted @ 2022-11-29 11:36 爱吃巧克力的狗
阅读(202)
评论(0)
推荐(0)
pinia源码解读三(创建store)
摘要: ###定义模块 这一步很复杂,用几个流程图来梳理一下 createOptionsStore方法 createSetupStore方法 数据流向 最后整理下数据的流向变更,对于写pinia插件很有帮助 option写法版本 pinia.state.value[$id] --> 原生的state对象 s
阅读全文
posted @ 2022-11-29 11:15 爱吃巧克力的狗
阅读(110)
评论(0)
推荐(0)
2022年11月28日
pinia源码解读二(定义模块)
摘要: ###定义模块 store.ts文件的defineStore方法 判断是option写法还是setup写法 isSetupStore = typeof setup 'function' 内部创建useStore函数,并给函数绑定$id属性为用户设置的id,然后返回 用户在外部任意位置调用useSto
阅读全文
posted @ 2022-11-28 16:19 爱吃巧克力的狗
阅读(325)
评论(0)
推荐(0)
pinia源码解读一(初始化)
摘要: ###初始化 createPinia.ts 主要有3步 effectScope生成了一个作用域在内部调用ref({})用来存储所有模块的state 创建了一个pinia实例,里面包含了use和install方法和一些关键属性 install内部使用vue的provide来传递pinia实例 use用
阅读全文
posted @ 2022-11-28 16:01 爱吃巧克力的狗
阅读(293)
评论(0)
推荐(0)
2022年6月17日
uni微信小程序优化,自动添加全局组件
摘要: 在网页可以很轻松的添加一个类似tip的全局组件,但是在微信小程序,每个页面都是单独的,无法使用全局组件, 基于此限制,我写了一个自动在每个页面添加组件的webpack插件。 ###实现方法 方法大家应该都能想到,在main.js里使用vue.component()来注册全局vue组件,然后在每个页面
阅读全文
posted @ 2022-06-17 11:50 爱吃巧克力的狗
阅读(917)
评论(0)
推荐(0)
2022年5月12日
webpack 源码浅析tree sharking的原理
摘要: 之所以写这篇文章,是因为前几天被一个标题党给骗了,开头写的多高级说是大厂面试官问起tree sharking的原理,面试者回答不上,然后就解答了这个原理,还引起我的好奇心,就读了下去,最后结论简单来说1.要用es6 2.webpack是通过ast解析来完成的,读完之后我觉得自己被骗了,写的什么东西啊
阅读全文
posted @ 2022-05-12 16:52 爱吃巧克力的狗
阅读(156)
评论(0)
推荐(0)
下一页
公告