首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
前端开发
度小涵
创建于2024-10-21
订阅专栏
mebius的前端开发之路
等 2 人订阅
共18篇文章
创建于2024-10-21
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
开源分享:实习中开发的单点登录Cookie管理神器 | 从痛点到产品的完整实践
CookieFlow 🚀 一个简洁现代的Cookie复制和管理工具 📖 开发背景 单点登录导致不同环境需要使用不同个cookie,手动去控制台粘贴过于繁琐麻烦,于是开发这款插件用于提高调试效率。 🛠️
面试官:请手写一个链式调用函数
先亮代码 核心就是维护一个任务数组收集需要执行的任务,通过return this来进行链式调用添加新任务。 return this中的this指向什么? 这是一个关键问题。在上面的代码中,this并不
百度实习-JavaScript等待用户输入的阻塞执行方案分享
最近在负责百度TDA平台的aiCalling二期,在给AI智能助手添加澄清功能的时候出现了一个需求:需要等待用户在输入框中输入内容并确认后,才能继续执行后续代码。简单来说,就是需要在同步代码流程中实现
为什么js是单线程语言,异步执行的时候就变成多线程了?
为什么js是单线程语言,异步执行的时候就变成多线程了? 因为js虽然是是单线程,但浏览器是多线程环境。 js的主线程负责执行js代码、dom操作和处理用户交互,当遇到异步任务的时候(如setTimeo
项目亮点万金油:自定义SSR水合保护hooks
什么是水合错误 nextjs官方原文: Hydration Errors: "Hydration is the process where React takes the server-rendere
从 Prop Drilling 到 Context:React 状态管理的演进与抉择
Context的出现解决了什么问题? Vue中的provide/inject和React中的Context非常相似,具体区别如下: 可以看到实际上最大的区别在于Vue是响应式,React是非响应式 那
虚拟列表业务封装思路分享
提出背景 公司组会上提到下拉列表元素过多的话会导致页面卡顿,而懒加载+分页的方案并不能阻止页面dom增多,所以就需要使用虚拟滚动方案。 我翻看掘金和csdn上的文章后发现很多是手写虚拟滚动方案,虽然手
自定义tiptap插件
我干了什么 我定义了两个插件: font-size:支持通过setFontSize设置tiptap编辑器字体大小,通过unsetFontSize重置为默认大小。 line-height:支持通过设置s
tiptap搭建仿google-docs工具栏
前言 由于展示的代码都较为简单,只对个别地方进行讲解,自行阅读或AI辅助阅读即可。 抽离简单组件 这个工具栏由多个工具小组件组成,我们可以将简单的部分抽离成公共组件ToolbarButton然后通过传
适合React宝宝体质的自定义防抖hook
为什么不推荐使用第三方库实现节流函数? 像节流防抖这类易实现的函数推荐手写而不使用库函数,为什么现在支持Tree Shaking按需引入还需要手写?因为可以根据实际情况高度定制和简化代码(体积更小)以
使用tiptap快速搭建markdown/富文本编辑器
技术栈 NextJS+ Tiptap+ TS+ Zustand + tailwind 为什么我选择tiptap 模块化架构 + 协同编辑能力 + 现代技术栈 tiptap通过插件化设计实现了极致的可定
只用过传统搜索方式?来试试url持久化搜索
传统搜索方式 从搜索框拿到数据后直接传给后端查询 url持久化搜索 这里就是将q?={search}放在了当前页面的url后面,若search值为abc及当前q?=abc url持久化有什么好处? 将
真实开发踩坑:闭包捕获问题
本文为开发开源项目的真实开发经历,感兴趣的可以来给我的项目点个star,谢谢啦~ 具体博文介绍: 开源|Documind协同文档(接入deepseek-r1、支持实时聊天)Documind 🚀 一个
开源|Documind协同文档(接入deepseek-r1、支持实时聊天)
Documind 🚀 一个支持实时聊天和接入deepseek-r1模型AI助手的协同文档编辑项目
比节流防抖更优的选择(特定情况)
由以上代码可以看出明显是第一种方案的代码量少性能更优方便阅读和维护,并且删除按钮每次有且仅需要点击一次不需要多次点击,所以使用节流防抖有点“画蛇添足”
elementPlus-button组件二次封装
基于 Element Plus 按钮的二次封装,预设四种常用按钮类型及图标,支持防重复点击和自动 loading 状态,保持原组件全部功能。使用 Vue3 + TS 开发。
如何优雅的避免cloudinary云图片加载失败?
有时候获取图片地址的时候初次获取是无法正确获取到的,必须刷新一次或多次才能正确获取到图片,但是浏览器只会加载一次图片,这就会导致图片即使存在也无法正确加载从而被备用图片替换。
为什么我推荐所有tailwind使用者使用cn函数
使用cn()有什么好处? cn()函数实际上就是将twMerge和clsx封装到了一起。 twMerge 有什么用? twMerge 的产生是为了解决样式冲突问题。比如一个button组件,它本身自带