- 博客(61)
- 收藏
- 关注
原创 解决使用pnpm安装时Sharp模块报错的方法
在使用pnpm进行项目依赖安装的过程中,有时候会遇到Sharp模块报错的情况。Sharp是一个用于处理图像的Node.js模块,但它的安装可能会因为各种原因而失败,导致项目无法正常启动。本文将介绍这个问题的方法。
2023-12-09 12:35:39
3053
原创 前端面试题【构建工具篇】
在前端构建工具的选择和使用中,深入理解Webpack和Vite的原理及其区别,对于提高开发效率和项目性能至关重要。希望本文对于你在前端面试中对构建工具的问题有所帮助。如有疑问或建议,欢迎留言讨论。
2023-12-06 22:10:28
602
原创 JS和Node事件循环的区别
在设计初期由于防止多线程操作dom,浏览器不知道以哪个线程为主,所以JS设计为单线程。但是加载执行JS遇到大任务就可能会造成dom解析的堵塞,所以产生了异步队列,当遇到异步任务,浏览器会将异步任务挂起,继续执行执行栈中的其他任务,当异步任务执行完后,再将异步任务放进任务队列去,当执行栈为空时,会判断微任务队列中是否有可执行,然后再去判断红任务队列的任务。
2023-12-06 14:19:28
281
原创 面试官:说说回流和重绘吧
当渲染树中,当元素尺寸、结构、属性发生变化时,浏览器需要重新渲染部分或者全部文档的过程,就叫做在触发回流的时候,由于浏览器渲染是基于流式布局的,当触发回流时,会造成周围的 DOM 元素发生重新排列。
2023-12-04 18:34:52
424
原创 一分钟认识JS中 ?? 和 || 两者的用法和区别
在JS中,??和||都可以处理空值或者未定义,这两个操作符有什么区别呢?||是逻辑或运算符,用于进行逻辑判断,它是这样运行的,如果第一操作值为假值(null、undefined、false、空字符串、0、NaN),那么就会返回第二个值。如果第一个值为真值,返回第一个值。||一般用在处理默认值或者条件运算是空值合并操作符,用于对空值(null、undefined)进行处理。它的行为是这样的:如果第一个操作数是空值(例如null或undefined),那么它就会返回第二个操作数的值。反之返回第一个值。??
2023-12-03 19:17:36
631
原创 面试官:说说Vue中Proxy与Object.defineProperty的用法与区别
Proxy 是一个对象的代理,Object.defineProperty只能代理某个属性Proxy可以在读取时递归代理,Object.defineProperty只能在创建时递归所有对象上新增属性,Proxy可以监听到,Object.defineProperty不能数组修改,Proxy可以监听到, object.defineProperty不能Proxy兼容性差。
2023-12-03 14:32:47
1020
原创 Vue经典面试题源码级分析【一】
propsemit$parentref$attrs$parent$rooteventbusvuexeventbusvuexprovideinjectpropsemit是最常用的父子间通信的方法,也可以通过$attrs去透传属性,父组件可以通过ref来访问子组件、子组件也可以通过$parent来获取父组件兄弟组件通信上:兄弟组件没有实际的联系,需要建立一个中间人。可以通过$parent$rooteventbusvuex来解决跨层级的化只能通过eventbusvuexprovideinject。
2023-12-03 11:50:23
204
原创 VUE设计与实现共读系列之ref的实现【响应式原理】
我们先顺一下vue使用响应式数据的流程:vue 是通过ref和reactive来创建响应式值,改变响应式值,视图跟着发生变化。我们今天就来看一下ref和reactive是如何实现的。
2023-12-02 18:36:23
327
原创 前端监控学习笔记
资源加载错误指的是比如一些资源文件获取失败,可能是服务器挂掉了等原因造成的,出现这种情况就比较严重了,所以需要能够及时的处理,网路错误一般用。错误监控,即当代码发生错误时,比如,同步错误,异步错误,promise错误,资源加载错误时,我们需要捕获到错误,然后上报给后端。记录用户行为,比如:分析用户浏览时间比较长的页面有哪些,常常点击的有哪些,可以做 相应的推荐。同步错误指的是在js同步执行过程中的错误,比如变量未定义,是可以被try catch给捕获到的。
2023-12-02 16:04:34
328
原创 《微信小程序案例大全》大学生期末大作业可以直接使用!!
这些案例为大学生提供了丰富的学习和实践机会,不仅涵盖了微信小程序的基础知识,还覆盖了社交应用、生活服务、娱乐等多个领域。希望这些案例能够激发更多学生在期末大作业中展现创意和技能。
2023-11-22 19:23:39
7225
1
原创 JS实现数字千分位分割(手写纯享版)
千分位格式化是前端开发中一个常见而有用的需求。通过使用上述简单的 JavaScript 函数。希望本文对您理解和实现千分位格式化有所帮助!
2023-11-22 18:54:13
854
原创 【部署篇】Docker配置MySQL容器+远程连接
上篇文章在部署nestjs时,由于docker访问不了主机的localhost,所以无法连接主机数据库。所以我们只能在docker中额外配置一个数据库,映射到主机上,然后可以通过ip地址访问。在本篇文章我们会在docker中创建一个mysql,毕竟使用navigator连接测试。
2023-11-16 14:22:48
560
原创 【部署篇】宝塔liunx中使用docker部署nestjs项目【全过程】
连接服务器获取宝塔面板信息在命令行输入进入宝塔面板输入账号密码通过上面网址进入宝塔安装自己需要的东西**PS:**这里还需要自己登录宝塔账号,没有账号的同学需要注册一下安装pm2管理器 (使用docker部署的话不需要使用pm2)PM2 是一个守护进程管理工具,帮助您管理和守护您的应用程序。它以简单直观的 CLI 命令行方式进行工作。文档地址: https://pm2.fenxianglu.cn/docs/start/
2023-11-16 14:07:11
1028
原创 【前端工程化】pnpm为什么这么火?一大原因离不开这一点
在一个项目中最头疼的问题就是依赖装不上,项目一直启动不起来,有些不太耐心的新同学就很容易放弃。幽灵依赖一直是前端工程化包管理器的一个重点问题,pnpm包管理器火起来的一大原因就是,他解决了幽灵依赖这个问题。今天这篇文章就将带你彻底认识。
2023-08-31 15:46:32
322
原创 新版Mongodb(6.0以上)找不到mongo.exe
安装目录下/bin目录中,没有mongo.exe文件,只有mongod和mongos,以及一个powershell命令脚本。原因在于,mongodb6.0以后做出了重大改变,mongodb已经不再默认为你安装shell工具,因此需要安装一个额外的shell:Install mongosh — MongoDB Shell,这个工具被称为mongosh。
2023-08-30 11:13:31
1465
原创 【前端工程化】万字拆解package.json (一)
package指拥有的一个文件夹(或压缩包),而package的属性就是nameversionmainhomepage。
2023-08-26 19:51:54
573
原创 vue3 setup语法糖导入mixin
像这样直接导入,然后通过defineOptions声明mixin。然后就可以在这个组件使用mixin里的数据和方法了。
2023-08-19 07:54:27
1703
原创 【前端工程化】缔造包之缘:揭秘 yarn/npm link
在开发过程中,我们经常会遇到需要在不同项目中共享自定义包的情况。为了解决这个问题,我们可以使用yarn link或npm link命令来在项目中创建软链接,使得一个包可以被其他项目直接引用。下面我们来探讨一下这个过程,并看看其中的一些使用场景。
2023-08-17 09:13:06
446
原创 【nodejs】用Node.js实现简单的壁纸网站爬虫
在这个博客中,我们将学习如何使用Node.js编写一个简单的爬虫来从壁纸网站获取图片并将其下载到本地。我们将使用Axios和Cheerio库来处理HTTP请求和HTML解析。
2023-08-16 21:50:28
1958
原创 实现一行命令提交 GitHub:简化代码管理的利器 - simple-git
simple-git是一个轻量级的Node.js库,提供了一系列简化的API,用于操作Git命令。通过simple-git,我们可以在JavaScript代码中执行Git命令,而不需要手动在终端中输入。
2023-06-22 08:23:00
1859
原创 【Next.js 13 实战指南】构建即时通讯录应用:项目搭建与优化
Next.js 13: 一个React框架,提供了服务器渲染、静态导出和动态路由等强大的功能。React: 一个流行的JavaScript库,用于构建用户界面。Tailwind: 一个高度可定制的CSS框架,用于快速构建现代化的用户界面。Prisma: 一个现代化的数据库工具,用于简化数据库操作和管理。MongoDB: 一个流行的NoSQL数据库,用于存储和检索数据。NextAuth: 一个简化身份验证和授权的库,用于处理用户认证和访问控制。生成的项目中主要文件存放在/app。
2023-06-21 11:45:42
1159
原创 知乎日常前端实习
useState第二个函数 改变状态是同步的还是异步的?连续两次+1会发生什么?问了一个react hook情景:如果要通过条件判断useEffect怎么做?socket.io和websocket 区别。函数组件使用了什么hook函数?函数组件怎么监听组件摧毁。websocket鉴权。useRef有什么用?箭头函数和普通函数区别。
2023-06-19 14:56:10
106
原创 实在智能前端实习
挑一个比较好的功能点:二次封装el-table?进一步抽取el-table的方法?拿到你的端口就可以接入websocket?(ip限定还有什么?基本和引用数据类型区别?一定是按照这种方式吗?闭包内部变量不会被收集,那应该存在什么地方(堆或者栈)面试官评价:还行、有一部分是准备上的、有的没答上。箭头函数和普通函数的区别。this和原型链有什么关系?输入url 会发生什么。个人博客的功能介绍一下。说说websocket。黑夜切换功能怎么做的。实习生主要负责什么?
2023-06-19 14:53:37
120
原创 【CSS篇】icon的布局方式
i>上面两个办法都是可以实现效果的,需要注意的是元素设置后脱离文档流,是不占位置的,需要给父元素设置relative,并且设置对应的padding给icon留出位置。
2023-06-11 13:09:50
360
原创 《前端工程化》:Vite开发中的依赖构建
在动态的导入和条件导入中,我们导入的模块可能引入了其他依赖,而依赖构建是在启动前的,不是在运行时,所以vite检测到新依赖的引入,会重新构建依赖,并且会造成页面的刷新,对大型项目来说这两点都是非常致命的。如下图例子:在a.js中引入了模块,在main.jsVite在运行时发现了新的依赖,随之重新进行构建,并刷新页面,也叫二次构建二次构建都需要重新走一遍预构建的流程,并刷新页面,面对大项目也非常吃力,如何解决这个问题呢?我们可以通过include。
2023-06-08 17:40:30
1342
第十四届蓝桥杯web组真题
2023-09-01
全栈博客项目 前后台Nuxt+vue+nest后端接口 自动发邮件等功能
2023-08-20
前端性能优化原理与实践
2023-08-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人