自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(276)
  • 收藏
  • 关注

原创 TypeScript很麻烦,不想使用!

最近,我们部门在开发一个组件库时,我注意到一些团队成员对使用TypeScript表示出了抵触情绪,他们常常抱怨说:“TypeScript太麻烦了,我们不想用!”起初,我对此感到困惑:TypeScript真的有那么麻烦吗?然而,当我抽时间审查队伍的代码时,我终于发现了问题所在。在这篇文章中,我想和大家分享我的一些发现和解决方案。我还注意到,在类型复用时,团队成员往往只是简单地为已有类型新增属性,而忽略了更高效的复用方式。例如,有一个已有的类型Props需要复用,但不需要其中的属性c。

2024-04-22 17:46:01 167

原创 前端加载超大图片(100M以上)实现秒开解决方案

图片压缩:将图片进行压缩可以大幅减小图片的大小,从而缩短加载时间。压缩图片时需要注意保持图片质量,以免影响图片显示效果。图片分割:将超大图片分割成多个小图块进行加载,可以避免一次性加载整个图片,从而加快加载速度。这种方式需要在前端实现图片拼接,需要确保拼接后的图片无缝衔接。CDN 加速:使用 CDN(内容分发网络)可以将图片缓存在离用户更近的节点上,从而加速图片加载速度。如果需要加载的图片是静态资源,可以将其存储在 CDN 上,以便快速访问。

2024-04-19 17:19:58 547

原创 你会用JS获取你当前的网络状况吗?

公众号:程序员白特,欢迎一起交流学习~我们知道,在Web端检测网速其实很简单,只需使用一个全局对象——

2024-04-18 17:38:37 281

原创 教你巧用 CSS/SVG 实现复杂线条光效动画

两种方法各有优劣,感兴趣的可以赶紧动手尝试一下!好了,本文到此结束,希望本文对你有所帮助 😃。

2024-04-16 17:43:16 257

转载 面试官:只知道v-model是modelValue语法糖,那你可以走了

我们每天都在用v-model,并且大家都知道在vue3中v-model是和的语法糖。那你知道v-model指令是如何变成组件上的modelValue属性和事件呢?将v-model指令转换为modelValue属性和事件这一过程是在编译时还是运行时进行的呢?vue是一个编译时+运行时一起工作的框架,之前有小伙伴私信我说自己傻傻分不清楚在vue中什么时候是编译时,什么时候是运行时。要回答小伙伴的这个问题我们要从一个vue文件是如何渲染到浏览器窗口中说起。

2024-04-15 18:40:51 24

原创 一文搞懂 JavaScript 模块化

本文介绍了 JavaScript 中主要模块方案和其背后的原因,希望对您有帮助,在日后的工作中看到任何模块,都不再困扰。

2024-04-11 18:26:18 890

原创 10年前端做leader,这是我想跟你说的

公众号:程序员白特原文:这些年做管理的一些感悟 - 掘金 (juejin.cn)2014年,我从大学毕业,到现在已经马上接近10年整了,内心深处,对于基层管理(前端leader)这个岗位,有了深刻的理解。而现如今,整个IT行业经历了巨大的繁荣之后,也进入到了自己的平稳期,以前动不动就想要升职加薪的预期早已不在,各个想要当leader的想法,好像也随着行业的发展而慢慢消失殆尽。

2024-04-10 18:28:24 409

原创 你真的了解JSON.stringify吗?

公众号:程序员白特,欢迎一起交流学习~大家对于这个方法应该都非常熟悉了,通常用于将对象或数组转换为字符串,即JSON格式,然后将其作为参数传递给后端接口。你对真的很熟悉吗?除了基本用法,你知道它还有其他6种用法吗?让我们一起深入了解吧~.

2024-04-08 19:14:11 244

原创 手撸一个简易 Grid 拖拽布局

到目前为止基本上的 Grid 拖拽布局大致实现了,已经满足基本业务需求了,当然有需要朋友还可以在上面增加支持拖拉调整大小、碰撞后自动调整位置等等。

2024-04-02 18:43:15 232

原创 如何实现多个PDF文件合并为一个PDF文件

公众号:程序员白特,欢迎一起交流学习~hi,我是白特。最近看到一个功能,十分感兴趣,也就是我们要将多个文件服务器中的PDF文件合并为一个PDF文件并以此进行下载打印操作。那么直接让我们一起看下它的实现思路吧。

2024-04-01 18:30:28 171

原创 别做老实人了!这才是 HR 喜欢听的离职原因!

公众号:程序员白特,欢迎一起交流学习~原创作者:前端开发爱好者哈喽,大家好 我是 白特👨🏻‍💻。今天我们来聊聊一个面试时超级敏感但又不得不面对的问题——离职原因💢找工作面试被问离职原因,千万不要直接说出你为什么从上家公司离职的真实原因!!!当老实人要吃亏的!!!其实,大部分真实的离职原因都是每家公司或多或少会遇到的,但如果直接说出来,很可能会让面试官担心你入职后也会因为同样的原因离职哦!💢😉 所以,作为一个聪明的求职者,我们应该如何回答这个问题呢?

2024-03-28 16:15:53 303

原创 面试官:tree-shaking的原理是什么?

在前端面试的过程中,前端工程化一直是考察面试者能力的一个重点,而在我们常用的项目打包工具中,无论是webpack还是rollup,都具备一项很强大的能力——,所以面试官也常常会问到的原理是什么,这时我们该如何回答呢?其实核心原理就是AST。在前端开发中,其实AST的应用有很多,比如我们前端项目的打包工具webpack、代码检查工具Eslint,代码转换工具babel都依赖了AST的语法分析和转换能力。AST是的缩写,这玩意儿的全称叫抽象语法树,它可以用来描述我们代码的语法结构。// ast.js。

2024-03-27 11:38:15 542

原创 开箱即用的中后台管理模版,建议收藏!

公众号:程序员白特,欢迎一起交流学习~原文作者:前端充电宝大家好,我是白特。今天来推荐几款开箱即用的中后台管理模版!

2024-03-26 15:14:51 497

原创 一文搞懂前端监控

项目上线后,等真正有用户的反馈故障时实际上已经为时已晚了,这时前端监控显示出了它真正的价值。前端监控需要配合公司中现有的上报服务来实现,无需将监控做到尽善尽美,而是可以根据不同的情况做出取舍。

2024-03-25 11:51:29 625

原创 2024 年还在用 Lodash?这个现代化替代品更安全、好用!

公众号:程序员白特,欢迎一起交流学习~原文作者:前端充电宝相信许多前端开发者对Lodash都耳熟能详,作为 JavaScript 领域的一款常用实用工具库,它在前端开发中广受欢迎, npm 周下载量高达 5200 万。然而,时光荏苒,转眼已是 2024 年,Lodash 是否仍然值得使用呢?它的确为开发者带来了许多便利,但同样存在一些不容忽视的问题。本文将深入探讨 Lodash 的局限性,并推荐一个更为现代化、值得一试的 JavaScript 实用工具库 —— Radash。

2024-03-24 17:39:38 705

原创 如何让自己的前端知识更全面

众所周知,计算机知识十分广泛复杂,尤其是在前端领域,各种概念和框架原理不断涌现。所以如果我们要使自己的前端知识扎实,就必须建立一个知识图谱,包括基础概念、应用和原理,使知识体系形成网络。同时将来这个知识图谱还可以帮助我们后期进行回顾复习。

2024-03-21 14:21:06 214

原创 深入探究process.env.NODE_ENV如何区分环境

属性返回一个包含用户环境信息的对象。在node环境中,当我们打印时,发现它并没有NODE_ENV这一个属性。实际上,是在package.json的scripts命令中注入的,也就是NODE_ENV并不是node自带的,而是由用户定义的,至于为什么叫NODE_ENV,应该是约定成俗的吧。

2024-03-20 11:07:43 381

原创 大厂真实 Git 开发工作流程

Git 从发布至今,已经发展了近 20 年,在这期间衍生了成百上千种有关 Git 的管理工具和协同规范,不同公司甚至是公司内部不同集团不同部门使用的规范都可能不尽一致,本文只分享本人在工作过程中真实使用到的开发工作流程,并且个人认为以上内容是具有一定普适性的,能够帮助到新人或者小白的一些基础知识。最后,遵循团队项目规范才能真正提高团队的协作效率。(宇宙免责声明哈哈😁)如果有疑问,欢迎评论区留言探讨~🤔。

2024-03-19 11:06:12 563

原创 产品经理:前端实现网页防篡改,你会怎么做?

首先使用进行劫持所有的input标签, 在里面会触发自定义事件自定义事件绑定在真实的input标签上,在浏览器执行js阶段完成了绑定事件。通过我们可以调用方法。在tamperFn里面拿到isTrusted来区分是不是被篡改的值。我们在绑定input标签的事情同时,设置了, 用来解绑事件。

2024-03-18 18:05:01 456

原创 Babel 7.24.0 出来了!

公众号:程序员白特,欢迎一起交流学习~Babel 7.24.0 出来了!

2024-03-15 11:05:02 243

原创 rust 正在全面入侵前端

由于 vite 对于项目内的模块采取的是请求时编译的策略,并且对源码不 bundle,因此,根据字节架构团队内部的经验,当项目规模巨大的时候,vite 的首次页面加载时间可能长达数十秒「页面首次加载时,加载了大量的模块」,刷新时极其卡顿,并且由于巨大的请求量可能导致浏览器崩溃,影响开发体验。我也是非常喜欢 Leptos 的开发者之一,并且把它作为熟悉 rust 语法学习的主要项目之一,因为这是我们前端更熟悉的领域,因此前端开发通过它掌握 rust 能达到事半功倍的效果。在语义上有更符合直觉的思考。

2024-03-14 16:25:44 853

原创 面试官:工作中处理过什么复杂的前端需求,如何解决的?

最后,回归正题,前端的复杂度也许很多,比如之前我参与的CPU负载过高问题排查,用尽手段定位一个月之后发现是一条正则语句引发的,这种性质的复杂属于特定场景下的复杂度。灰度方案其实相对是比较难做的,最简单的是按照机器灰度,但这种方案在实际环境中基本上是不可用的,对于一个需求来说,如果同时修改了老页面和新页面,会导致用户前后访问不一,甚至出现404情况。另一方面,文档在这一刻发挥出应有的价值,一般团队不怎么注重文档建设,一来写起来废时间,二来对于晋升和成长没什么帮助,看起来完全是利他性质,但实际上是互利。

2024-03-13 12:24:26 898

原创 大大提高开发效率的10个JavaScript技巧

公众号:程序员白特,欢迎一起交流学习~JavaScript 是前端开发中的必备语言。但是我发现很多同学对于 JavaScript 的技巧使用却并不熟悉。所以,今天咱们就来分享一下 JavaScript 的10个好用的技巧,帮你更好地使用 JavaScript,提升开发效率!

2024-03-12 12:15:19 540

原创 TypeScript 5.4 正式发布

公众号:程序员白特,欢迎一起交流学习~原文作者:前端充电宝3 月 6 日,TypeScript 发布了 v5.4 版本,该版本带来了以下更新:类型缩小会在闭包中保留引入新的实用程序类型NoInfer<T>新增和新的模块解析选项新的模块导入检查机制TypeScript 5.5 即将弃用的功能。

2024-03-11 12:35:04 842

原创 写给迷茫的 1-3 年前端人的思考

今年由于大环境差,加之大家都会遇到的职场困惑期,让很多人觉得很无助,不知道要向何处去努力。我有两三位朋友正面临类似的困境,向我寻求意见。虽然我不是什么大厂的架构师,也没有多牛,但也有一些自己的思考和实践,希望能帮助到他们,也希望与大家一起探讨这个话题。

2024-03-08 10:52:33 612

原创 什么?!你居然连个内存泄漏都排查不出来

公众号:程序员白特,欢迎一起交流学习~在日常的业务开发中,偶尔会出现内存泄漏的情况,那么我们该怎么排查呢?现在跟着文章一起学习下吧~

2024-03-07 15:46:41 705

原创 鹅厂打工8年,我为啥突然裸辞?

公众号:程序员白特,欢迎一起交流学习~原文:以下文章来源于沐洒 ,作者ASCII26今天跟大家分享一个重磅消息,沐洒终于从腾讯离职了!不知不觉已经在鹅厂打了8年工,如果说在大厂里工作如同在高校里念学的话,那么这8年,我相当于足足完成了两次全日制本科教育。上周五,我在乐问(腾讯内部问答平台)写下了最后一篇帖子,一方面对自己的“乐问达人”标签做个了结,另一方面也当作离场感言,给鹅厂生涯一个了结。(腾讯乐问,个人主页)(腾讯乐问,热帖推荐)

2024-03-06 14:05:16 378

原创 前端部署真的不简单

在二者部署的时间间隔内,如果有用户访问页面,就会在新的页面结构中加载旧的资源,并且把这个旧版本的资源当做新版本缓存起来,其结果就是:用户访问到了一个样式错乱的页面,除非手动刷新,否则在资源缓存过期之前,页面会一直执行错误。看上图,用文件的摘要信息来对资源文件进行重命名,把摘要信息放到资源文件发布路径中,这样,内容有修改的资源就变成了一个新的文件发布到线上,不会覆盖已有的资源文件。全套做下来,就是相对比较完整的静态资源缓存控制方案了,而且,还要注意的是,静态资源的缓存控制要求在。

2024-03-05 16:32:46 696

原创 (下)async/await高级用法,你会多少种呢?

众所周知,在ECMA17中加入了两个关键字asyncawait,简单来说它们是基于Promise之上的语法糖,可以让异步操作更加简洁明了。在掌握asyncawait的基础用法后,下面将介绍一些高级用法,以便充分利用实现更复杂的异步流程控制。

2024-03-04 11:05:04 130

原创 三个伪类让你的CSS代码更加优雅

大部分浏览器的新版本都已支持:is():where()和:has()这三个伪类了,如果你的项目跑在低版本的浏览器中,那么需要考虑一下回退策略。

2024-03-01 13:26:49 222

原创 开发前端需求时,我们该如何准确预估个人工时

分享一篇前端开发人员比较感兴趣的话题,如何评估工时。

2024-02-29 12:33:24 858

原创 (上)async/await高级用法,你会多少种呢?

众所周知,在ECMA17中加入了两个关键字asyncawait,简单来说它们是基于Promise之上的语法糖,可以让异步操作更加简洁明了。在掌握asyncawait的基础用法后,下面将介绍一些高级用法,以便充分利用实现更复杂的异步流程控制。

2024-02-28 10:57:57 258

原创 常见需求:CSS 实现弧形卡片的 3 种方式

以上就是本文的全部内容了,共介绍了 3 种不同的方式,下面总结一下各自优缺点border-radius 支持斜杠语法,可以单独控制圆弧的x、y半径,实现“外凸”圆弧最简单,缺点是圆弧不能自定义弧度,也不能实现“内凹”效果伪元素最符合常规思维,可以解决以上问题,缺点是需要占用伪元素,略微麻烦渐变实现和伪元素拼接思路类似,缺点是语法复杂,需要熟练掌握渐变语法大家可以根据自己的实际场景自行选择适当的方式,当然最好都能够掌握,这样碰到类似需求时才能游刃有余,如果你有其他的思路,欢迎留言讨论。

2024-02-27 11:40:35 1049

原创 用了那么久的Vue,你了解Vue的报错机制吗?

公众号:程序员白特,欢迎一起交流学习~原文:掘金-zayyo。

2024-02-26 13:39:08 566

原创 你还不会大厂必考的10个经典排序算法吗?

众所周知,10个经典排序算法在大厂的校招、社招面试中频繁出现,那么今天我们就来用JS语言实现一下这10个经典排序算法吧。

2024-02-23 17:21:50 212

原创 如何看待 “程序员下班后不想学习”

996后没有时间、精力学习怎么办?那就好好玩、好好休息。不追求高绩效,因为高绩效还跟公司经营状况相关,这是我们程序员无法左右的。即使被裁员,也能随时找到工作的能力即使不工作,也能谋生的能力能够提高我们技术影响力的能够提高我们技术能力的。

2024-02-22 12:19:25 324

原创 React 19 即将迎来大更新!

公众号: 程序员白特,欢迎一起交流学习~近日,React团队发布消息称,不会再发布v18.3版本了,而是将重点放在React v19版本。新版本将推出四个新的hook,旨在解决React虽然这些hook目前作为实验性API在React预览版本中可用,但它们预计将成为React 19的稳定功能,但是最终发布React v19之前,API 可能会有所变化。

2024-02-21 13:47:40 917

原创 从 V8 引擎内部看看闭包到底是什么

对于我们前端开发来说,无时无刻不在接触着闭包。比如在中利用了闭包来捕获组件的状态,并在组件的生命周期中保持状态的一致性。在Vue中利用闭包来定义计算属性和监听器,以及在组件之间共享数据。在Angular中利用闭包可以用于创建服务和依赖注入。所以理解闭包产生的原因和原理对我们的日常开发非常重要。

2024-02-20 11:23:09 867

原创 都2024了,你还在使用websocket实现实时消息推送吗?

在日常的开发中,我们经常能碰见服务端需要主动推送给客户端数据的业务场景,比如数据大屏的实时数据,比如消息中心的未读消息,比如聊天功能等等。本文主要介绍SSE的使用场景和如何使用SSE。在很久很久以前,前端一般使用轮询来进行服务端向客户端进行消息的伪推送,为什么说轮询是伪推送?因为轮询本质上还是通过客户端向服务端发起一个单项传输的请求,服务端对这个请求做出响应而已。通过不断的请求来实现服务端向客户端推送数据的错觉。并不是服务端主动向客户端推送数据。显然,轮询一定是上述三个方法里最下策的决定。

2024-02-19 12:34:39 857

原创 教你怎么前端实现埋点上报

只有了解用户,我们才能服务好用户,而最接近用户的我们,自然要承担起更多的责任。那么在一个企业中,我们要如何去了解用户呢?最直接有效的方式就是了解用户的行为,了解用户在网站中做了什么,呆了多久。而如何去实现这一操作,这就涉及到我们前端的埋点了。因为埋点实际上是对关键节点的数据进行上报是和服务端交互的一个过程,所以我们可以和后端约定一个接口通过ajax去进行数据上报。方法可用于通过HTTP POST将少量数据 异步 传输到 Web 服务器。前端埋点上报常使用。不推荐使用ajax。

2024-02-08 17:29:31 782

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除