自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Deno 2.0 正式发布!简化 Web 开发新篇章

2024 年 10 月 9 日,Deno 团队正式宣布推出 Deno 2,这是一个现代化的 JavaScript 和 TypeScript 开发工具链,旨在简化 Web 编程。Deno 2 的推出标志着 Web 开发的新篇章,提供了与 Node.js 和 npm 的向后兼容性,同时保留了 Deno 用户喜爱的简洁性和安全性。

2024-10-11 10:23:52 914

原创 一觉醒来,发现 try-catch 要失业了?换个新姿势处理异常!

try-catch是我们在前端开发中兜底处理异常的常见手段,确保应用程序稳定运行。而 ECMAScript 提案中的安全赋值运算符?则让错误处理变得更加简洁,特别是在处理函数结果和 Promise 时,显得更加方便。通过,我们还可以自定义对象的行为,进一步增强代码的灵活性。原文链接:https://juejin.cn/post/7423573726401331219。

2024-10-11 10:23:09 450

原创 2024 最新 ECMAScript 标准

ECMAScript 是由 ECMA International 通过 TC39(技术委员会39)进行标准化的脚本语言规范,它是 JavaScript 语言的基础。JavaScript 是 ECMAScript 规范的一个实现。

2024-10-11 10:22:16 972

原创 构建安全小程序:RBAC思想下的权限控制方案

RBAC(Role-Based Access Control,基于角色的访问控制)是一种广泛应用于计算机系统和网络安全的访问控制机制。它的核心思想是通过定义角色,将权限与角色关联,再将角色赋予用户,从而简化权限管理。简单一点来说就是把权限绑定到角色上,在把角色分配给用户,来实现对系统资源的访问控制。一个用户可以拥有多个角色,一个角色又可以拥有若干权限,这样就构成了用户-角色-权限的授权模型系统中的实体,通常是人或进程,需要访问系统资源。(指的是系统的实际使用者。一组权限的集合。

2024-10-11 10:21:13 1347

原创 从0到1搭建react组件库-Icon篇

前端开发实践中,SVG图标因其可拓展性和灵活性而成为图标展示的首选方式。组件库通常也集成了一系列通用的图标组件,使得开发者能够轻松的在项目中实现这些图标的快速部署和使用。当使用组件库提供的Icon组件时,可能会好奇为什么每个图标都可以直接以其名称作为组件名来引入。实际上,组件库中确实是通过为每个图标声明了一个独立的React组件来实现的,但是这个过程并不是通过常规的手动声明方式完成的。

2024-10-10 10:55:50 1193

原创 Otter Wiki:用 Python 和 Markdown 搭建你的小型知识库,1步秒杀!

你有没有想过,有没有一种工具可以轻松管理你的个人知识库,还不用费力学习复杂的操作系统?今天,我们来聊聊,一个由和支撑的小型 Wiki 系统,让你能快速构建属于自己的知识管理工具,完全不需要依赖庞大的平台。

2024-10-10 10:49:17 729

原创 qiankun 中 JS 沙箱的实现

对象的快照来实现状态的隔离,虽然简单有效,但存在性能和内存方面的不足,适用于对浏览器兼容性有要求的场景。对象实现的沙箱机制,它能够支持在同一页面上运行多个微应用,同时保证每个应用对全局环境(这里我们实现一个简单的单应用代理沙箱机制, 对应乾坤的源代码可以看这里 -这里我们实现一个简单的多应用代理沙箱机制, 对应乾坤的源代码可以看这里 -对象的状态,确保每个微应用在激活和失活时都能够拥有独立的环境。当沙箱失活时,还原修改前的属性值并删除新添加的属性,将。对象的修改,对应乾坤的源代码可以看这里 -

2024-10-10 10:48:27 690

原创 手写 p-map(控制并发数以及迭代处理 promise 的库)

p-map是一个迭代处理promise并且能控制promise执行并发数的库。作者是,他还创建了许多关于promise的库,感兴趣的同学可以去看看。之前提到的p-limit也是一个控制请求并发数的库,控制并发数方面,两者作用相同,不过p-map增加了对请求(promise)的迭代处理。之前p-limit的用法如下,limit 接受一个函数;js代码解读复制代码。

2024-10-09 11:01:00 562

原创 面试中常问的 TS 类你都明白了吗❓

TypeScript 的类是面向对象编程的核心,封装了对象的状态(属性)和行为(方法),支持静态成员和非静态成员的区别。类可以使用访问修饰符(publicprivateprotected)控制成员的可见性,并支持继承和方法重写来扩展父类的功能。抽象类和接口定义了行为规范,其中抽象类可提供部分实现,而接口则用于类型约定,允许一个类实现多个接口,实现灵活的代码设计。原文链接:https://juejin.cn/post/7422975564456525843。

2024-10-09 11:00:15 1004

原创 Js的预编译你了解多少呢?

全局定义了函数a和global,形成如图GO,此时a[[scope]]的0指向GO,函数a内定义了函数b和a,形成如图AO,此时a[[scope]]的0指向自己的AO,1指向GO,函数b定义了b,形成如图AO,b[[scope]]的0指向自己的AO,1指向a[[scope]]。是指在程序运行之前,先对程序进行一些处理,例如预处理、编译、链接等,以便提高程序运行效率和减少运行时的错误。全局预编译-->GO-->执行,碰见函数-->函数预编译-->AO-->执行函数。(给js引擎访问的,我们拿不到 --

2024-10-09 10:58:07 855

原创 初中级前端如何提升和破局?两个关键因素

前端入门容易,但精通(某个方向)真的很难,如果你是非科班出身,还需要补充大量的计算机基础知识。你需要在某个方向或者领域,付诸大量的、长期的学习和练习,而且还要有真实的项目经验,这个可遇不可求。每个技术人员都希望自己每年都有所成长,慢慢的晋升为某个领域的大佬,如何做到呢?当然有运气成分,而且运气很重要。运气我们把控不了,那就看看其他自己能把控的,最重要的就是找到你提升或破局的方向和关键因素。真实复杂的项目经验全栈能力,具体原因大家看我慢慢分析。这个世界上大部分的人都在干两件事忙:上班、加班。

2024-10-09 10:52:27 889

原创 鸿蒙 Next 实战: 环境搭建

作为独立开发者,如果我们错过了传统移动 App,和后起小程序的红利,那万物互联 + AI 的应用开发就得抓住了。虽然个人上架应用平台难易都差不多,但是鸿蒙生态当前正需要广大开发者参与,一旦上架,相比其他平台,流量扶持力度更大,变现能力也更容易。所以,我们可以先开发一些应用占个位置,后面再逐渐迭代完善;那么,第一步就先从搭建开发环境开始吧。鸿蒙 Next,英文 HarmoneyOS Next,又叫纯血版鸿蒙,2023 年 8 月 4 日开发者预览版,2024 年 6 月正式对外公布。

2024-10-08 10:38:05 863

原创 分析模式——可复用的对象模型

最近读了《分析模式——可复用的对象模型》一书,这本书算是DDD方面的一本启蒙书籍,阅读完成后还是受益良多,一方面是很多观点和平时的工作相互印证,很受启发,另一方面学到了一些业务建模的模式,本文主要总结一下收到启发的地方和建模原则,具体的建模方式举一个例子体会一下就好。

2024-10-08 10:18:15 1139

原创 前端架构师如何选择框架的思考

在当今的前端开发领域,React、Vue和Angular这三个框架无疑是最耀眼的明星。它们以其现代化的功能、强大的社区支持和灵活的应用场景,引领着前端技术的潮流。开发者在选择合适的框架时,常常需要考虑多个因素,包括项目的规模、团队的技术栈、以及期望的应用性能等。本文将深入探讨这三个框架的核心特性、优缺点及适用场景,通过详尽的对比分析,为您提供一个清晰的选择指南。无论您是前端新手还是资深开发者,了解这些框架的差异将帮助您做出更明智的技术选型决策。

2024-10-08 10:12:35 1100

原创 纯CSS 使用原生三角函数完成时钟效果

最近朋友问我是否可以使用纯来实现图中的一个时钟效果,本来我是拒绝的因为这看起来不太可能用纯来实现,因为这种圆盘形状的布局在常规中并没有办法实现,直到...CSS:层叠样式表 sin() 我们可以看MDN上对此的详细解释和定义简单点说我们可以直接在中使用三角函数举个栗子!如上图我们可以看到数字表盘是从围绕中心点排列而成,这在以前来说除非使用一些奇淫巧计是无法完成的。如今只需要根据三角函数定义就可以轻松完成!可以看到在上面提供的例子中我们设置了几个变量此时我们复习一下之前在H5 实现超丝滑ChatGPT语音交互

2024-10-08 10:10:33 981

原创 纯CSS实现有趣emoji切换开关

通过使用CSS变量、3D变换和过渡效果,创建了一个既美观又功能丰富的Emoji Toggle按钮。这个交互效果极大了增强了用户体验。希望这篇文章能激发你探索更多CSS的可能性,感兴趣的可以尝试看看~原文链接:https://juejin.cn/post/7419166509908049961。

2024-09-30 10:18:28 760

原创 网页版的淘宝首页不好看,那就自己给官方写一个并投稿上去

换肤地址!!原文链接:https://juejin.cn/post/7417847557047599123。

2024-09-30 10:17:07 649

原创 Nuxt3快速入门

在/src目录新增app文件夹,文件夹下建立router.options.ts文件(如果没有使用本文中的/src目录的配置,要在根目录下新增app文件夹)。该文件返回定制路由的函数来覆盖路由,如果返回 null 或 undefined, Nuxt将退回到默认路由。text代码解读复制代码ts代码解读复制代码访问其他未定义页面路由,比如原本的,提示404;原因是自定义路由完全替换了自动生成的路由。如果我们只是希望在自动导入的路由下,添加自定义路由,应该使用钩子配置。

2024-09-30 10:14:10 1894

原创 弃用 Echarts!这一次我选择 - Vue Data UI!

如果你的仪表板这么好,为什么你的用户要求 CSV 导出功能?这个开源库的目的是为最终用户提供一组围绕图表和表格的内置工具,以减少重新计算导出数据的麻烦。当然,Vue Data UI 保留了导出为 CSV 和 PDF 的选项,以防万一。数据,是现代商业决策的基石。但如何将复杂的数据转化为直观、易理解的视觉信息?这正是致力于解决的问题。

2024-09-30 10:12:45 2122

原创 如何让线宽不管怎么缩放画布,都保持渲染为 1px

你说,诶,我把图形 stokeWidth值设置为 0.5,那放大 2 倍,渲染出来的线宽还是 1,这样也实现了渲染 strokeWidth 不变的效果。还有一种就是计算图形的所有场景坐标系点,转换为视口坐标系的点,然后放到在视口坐标容器上,因为 zoom 永远为 1,此时 strokeWidth 设置为 1px 即可。比如图形的线宽为 1px,如果画布放大为 2 倍,线宽也会渲染为原来的两倍。遗憾的是,strokeWidth 不管设置为多少,渲染的都是 1px,这是 WebGL 特性带来的效果。

2024-09-29 10:44:03 942

原创 深入理解 React 中的虚拟 DOM:工作原理与性能优化

虚拟 DOM 是 React 的核心技术之一,通过它,React 能够在不牺牲性能的情况下,简化我们与 DOM 的交互。然而,随着应用规模的扩大和复杂度的增加,我们依然需要通过一些额外的优化手段来提升性能,如合理使用key、缓存计算结果和函数,以及避免不必要的重新渲染。掌握这些技巧后,我们可以最大限度地利用虚拟 DOM 的优势,构建高效的 React 应用。希望本文对你深入理解 React 的虚拟 DOM 有所帮助,并能在实际开发中提升你的应用性能!

2024-09-29 10:42:46 1520

原创 Element Plus表单子项label属性与插槽用法的小坑

中表单子项的label属性的值为空时不会被渲染在DOM树上,而在v-slots插槽中label的值为空时仍会被渲染在DOM树上。在插槽中label属性的值要赋为null才不会被渲染在DOM树上,属性中传入空字符串''就可以。作者:limyer链接:https://juejin.cn/post/7419532382803410994来源:稀土掘金著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

2024-09-29 10:41:14 1691

原创 CSS样式属性之文本

大家好🎃,我是一名前端初学者,今天要学习和讲解的内容是CSS的文本属性,在前面的文章中我们学习了HTML标签和CSS最常用的几个属性,其实有了这些知识我们就能编写最基础的网页了,但是如果想要开发更加复杂的网页需要扩展更多的知识,CSS的文本内容就是开发更加复杂网页必须要掌握的基础知识,废话不多说那么让我们开始吧🐧~这篇文章到这里就结束了🎉,这篇文章我们学习了CSS的文本常见的属性,经常用到的是text-align。

2024-09-29 10:38:22 516

原创 在vercel部署项目时除首页外刷新报404

这是因为vercel的路由配置问题,vercel默认会将所有的请求都重定向到首页,所以在刷新页面时会报404。原文链接:https://juejin.cn/post/7419132517380948020。然后等待vercel重新部署项目即可。在public文件夹下创建一个。在项目根目录下创建一个。

2024-09-28 11:07:03 1015

原创 太坑了。。。Git仓库为什么越来越大

随着版本的迭代,仓库大小会越来越大,对于大文件的提交(视频、jar、SDK..)一定要慎重考虑是否提交到仓库,避免不必要的困扰。执行shell代码解读复制代码执行git reflogshell代码解读复制代码执行git gcshell代码解读复制代码号外最近低代码强力更新,欢迎大家体验原文链接:https://juejin.cn/post/7419123474700697627。

2024-09-28 11:03:36 1068

原创 大话前端组件

在软件工程中系统的架构也在随着规模不断的演进,最初的面向过程的软件开发到现在面向对象的软件开发。软件工程也逐渐进入组件化开发阶段。然而前端的组件化的发展一直滞后,传统的桌面开发早已经进入组件化开发阶段。Web1.0时代前端主要是HTML与CSS的天下,JS则是简单的辅助工具而已。到了Web2.0时代前端开始走向以AJax技术为核心轻量级别交互,以JQuery、ExtJS、Dojo代表前端类库(后两者为框架)为导向的开发开始迅猛发展。JQuery在前端领域叱咤风云多年,人们都纷纷认为JQuery战无不胜。

2024-09-28 10:59:29 1239

原创 Sharp.js:简单而又实用的图像处理库。

在现代Web开发中,图像处理是一个不可或缺的部分。前端开发者经常需要处理图像,以确保它们在不同的设备和分辨率上都能保持良好的显示效果。sharp.js是一个高性能的Node.js模块,它利用了libvips库,提供了快速且高效的图像处理能力。本文将介绍sharp.js的基本使用和一些进阶技巧。sharp.js是一个基于Node-API的模块,它能够将大型图像转换为更小、更适合网络传输的格式,如JPEG、PNG、WebP、GIF和AVIF。它支持所有支持的JavaScript运行时环境,包括。

2024-09-28 10:38:46 754

原创 FormCreate:支持可视化设计的低代码表单组件

FormCreate是一个基于Vue.js的表单设计器,它允许用户通过简单的拖拽和配置来创建复杂的表单,极大地提高了表单设计的效率。下面,我们将详细介绍FormCreate的各项特性。

2024-09-28 10:37:00 872

原创 rust加持下,老项目也能飞起! vue-cli 迁移 rsbuild (vue3)

截至2024年9月,vue-cli已经不怎么更新了,vue-cli基于webpack创建,迁移到vite的成本并不算低,还好有rsbuild,兼容webpack,让迁移成本大大降低。rsbuild 是rspack的上层封装,配置更简单些。

2024-09-27 10:05:43 723

原创 Vue 3.5 双向链表如何实现依赖收集

安装响应式系统包, 核心代码如下所示,通过 debugger 直接进入reactivity包调试jsx代码解读复制代码。

2024-09-27 10:05:00 1144

原创 cesium加载Echarts饼图

本文全是干货,没有多余的废话,直接进入主题。

2024-09-27 10:03:29 626

原创 Flash Waimai:饿了么外卖平台开源项目

这是一个仿照饿了么的外卖平台,包括手机端、后台管理以及 API 服务,基于 Spring Boot 和 Vue 的前后端分离的外卖系统。虽然项目主要是为了交流学习,不建议商用,但它提供了一个完整的框架和丰富的功能,让你能够深入理解外卖平台的运作机制。该项目使用的技术栈包括Spring Boot、Vue.js、MySQL和MongoDB等,是一个非常适合学习和二次开发的项目。不仅仅是一个简单的演示项目,它拥有完整的外卖业务流程,包括用户下单、商家接单、配送员配送等。,支持 H5、微信小程序和 APP。

2024-09-27 10:02:39 935

原创 数据结构对决:Set vs Map

下面聊聊set和map的特殊的点吧~Set为ES6提供的一种新的数据结构,它类似于数组,但是成员的值都必须是唯一的,没有重复的值。Map解决了传统意义是只能将字符串当作键的问题。

2024-09-27 10:01:08 801

原创 VSCode插件之Remote-SSH

一台机器想要免密访问其他机器,需要把自己的公钥内容发送到别的机器的authorized_keys中去,并在本机config文件中配置私钥文件位置。你可以选择在生成密钥对时为其指定不同的文件名。请注意,-f 后的id_rsa_linux 和 id_rsa_windows 只是示例文件名,你可以根据需要选择其他文件名。系统会在你指定的路径(本例子为 /Users/YourUsername/.ssh)下生成两个文件,分别是id_rsa_linux.pub和id_rsa_linux,前者为生成的公钥,后者为私钥。

2024-09-26 10:40:48 3125

原创 iconv-lite:一个库搞定所有字符编码问题?

在全球化的开发环境中,处理不同字符编码已成为许多应用程序的关键需求。无论你是在开发需要支持多语言的应用,还是需要处理来自不同源的文本数据,一个高效且可靠的字符编码转换工具可以大大提升你的开发效率。今天,我们要介绍的是 iconv-lite 这个纯 JavaScript 实现的字符编码转换库,它能帮你轻松处理各种字符编码转换问题,特别是中文字符编码问题,用它准好使!iconv-lite是一个轻量级的纯JavaScript实现的字符编码转换库。它提供了一个简单而强大的接口,用于在不同字符编码之间进行转换。

2024-09-26 10:38:45 831

原创 用 contentEditable 快速封装一个组件,产品直呼:你这效果真令我欢喜!!!

整个组件实现起来还是比较简单的,核心就是 contentEditable 属性,但实际以上实现还有很多缺陷,比如删除初始内容再输入时会将输入的内容保持在初始 DOM 元素中而不是创建新元素,以及删除初始内容的过程中针对于表单项的删除十分怪异,后来跟产品沟通了一下都还可以接受就没有再去优化。需要哪些 props?最近已经上手公司的业务了,但是整体难度不大,因为大部分的总结都是写在了内网语雀里,外加下班后回家被杨戬各种虐,“猴欢喜” 的台词听了有小几十遍🤐,所以好久没有在掘金上写过文章了😶。

2024-09-26 10:36:19 1168

原创 虚拟列表,实战复制到项目中,解决几万条数据滚动卡顿

常网IT源码上线啦!本篇录入吊打面试官专栏,希望能祝君拿下Offer一臂之力,各位看官感兴趣可移步🚶。有人说面试造火箭,进去拧螺丝;其实个人觉得问的问题是项目中涉及的点 || 热门的技术栈都是很好的面试体验,不要是旁门左道冷门的知识,实际上并不会用到的。接下来想分享一些自己在项目中遇到的技术选型以及问题场景。《爱在黎明破晓前》我见了你一面,便用一生去怀念三部曲讲解了青春、中年、老年的爱情,触动挺多的。今天像往常一样,开开心心的打代码编程。

2024-09-26 10:30:37 1180

原创 问题合集更更更之cssnano配置导致打包重新计算z-index

👏问题合集更更更之cssnano配置导致打包重新计算z-index~🥇‌cssnano是一个基于PostCSS的CSS优化工具。cssnano的主要功能是对CSS文件进行多方面的优化,以确保最终生成的文件对生产环境来说体积是最小的。它通过采用格式良好的CSS并通过许多优化措施,来确保最终的生产环境中的文件尽可能小。cssnano的优化措施可能包括但不限于压缩CSS代码、合并选择器、删除未使用的样式等,从而减小文件大小,提高网页加载速度。

2024-09-25 10:21:37 673

原创 js狠疯狂:10分钟生成项目,前后端一体化高效开发方案

原文链接:https://juejin.cn/post/7415672130212626432。

2024-09-25 10:20:18 1092

原创 NestJS实战-产品需求规划

前端这边打算用我最了解的react一套,后端就是要介绍的NestJs,数据库就最常用的MySQLTypeORM。前端React@18TypeScriptantd@5.13UMI@4后端NestJSTypeScriptMySQLTypeORM身份验证JWT。

2024-09-25 10:19:22 1098

空空如也

空空如也

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

TA关注的人

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