自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 elementui plus + vue + express 使用multiparty,实现图片上传

var mul = require('multiparty') //引入multipartylet form = new mul.Form() //创建mul的form实例res.send({img:img.file[0].path //获取到图片路径})})})

2023-04-24 20:06:22 221

原创 总结一些前端面试题

说说你对webSocket的理解?说说你对webSocket的理解?

2023-03-27 14:31:17 230

原创 说说AMD、CMD、commonJS模块化规范的区别

项目是由多个模块组成的,模块和模块之间的调用,需要各个模块有相同规范的 API,这样一来在使用的过程中不会有那么多的学习成本,并且对于单个模块来说是类聚的。CommonJS缺点:由于 CommonJS 是同步加载模块的,在服务器端,文件都是保存在硬盘上,所以同步加载没有问题,但是对于浏览器端,需要将文件从服务器端请求过来,那么同步加载就不适用了,所以,CommonJS是不适用于浏览器端的。AMD和CMD都是进行异步加载的,针对于浏览器,AMD是依赖前置,cmd是就近依赖的,需要把模块变成字符串进行解析。

2023-03-27 14:20:07 185

原创 说说你对React中虚拟dom的理解?

虚拟dom通过js模拟网页文档节点,生成虚拟dom树,然后进一步生成真实的dom树,渲染到页面,如果内容发送改变,react会中心生成一颗全新的虚拟dom树,与前边的旧的虚拟dom通过diff算法进行对比,将变化的部分打包成patch,再次应用到真实dom中,重新渲染页面。虚拟dom是一种编程概念,它就是一颗虚拟的js对象树,它将真实的dom转换为了一个个js对象,保存在内存中。

2023-03-27 14:10:14 95

原创 React性能优化的手段有哪些?

这类优化在所有前端框架中都存在,重点就在于如何将这些技巧应用在 React 组件中。这类优化的目的是减少提交阶段耗时。

2023-03-27 14:02:21 326

原创 说说如何借助webpack来优化前端性能

可以通过InlineChunkHtmlPlugin插件将一些chunk的模块内联到html,如runtime的代码(对模块进行解析、加载、模块信息相关的代码),代码量并不大,但是必须加载的。一般来说在打包之后,一些图片文件的大小是远远要比 js 或者 css 文件要来的大,所以图片压缩较为重要。将代码分离到不同的bundle中,之后我们可以按需加载,或者并行加载这些文件。Module的静态语法分析(不执行任何的代码,可以明确知道模块的依赖关系)对文件的大小进行压缩,减少http传输过程中宽带的损耗。

2023-03-27 13:57:32 65

原创 知道react里面的createPortal么,说说其使用场景?

因此Portals适合脱离文档流(out of flow)的组件,特别是position:absolute和position:fixed的组件,比如模态框、通知、警告、goTop等等。Portal将提供一种将子节点渲染到DOM节点中的方式,该节点存在于DOM组件的层次结构之外。

2023-03-27 13:54:01 70

原创 useEffect的依赖为引用类型如何处理?

1.如果数据是对象的话,可以监听对象里面的值,值是基本数据类型,如果值发生改变,那么可以监听执行。2.在去修改对象和数据的时候,使用深拷贝或浅拷贝,这样在地址发送改变时,可以进行监听执行。3.可以通过JSON.stringify()转为字符串,监听字符串发送改变监听执行。

2023-03-27 13:48:53 179

转载 react中onClick绑定后的工作原理?

react会将click这个事件统一存到一个对象中,回调函数的存储采用键值对(key/value)的方式存储在对象中,key 是组件的唯一标识 id,value 对应的就是事件的回调函数,通过组件的key就能回调到相应的函数了。首先react有自己的事件系统,也是遵循w3c的,这个事件系统的名称叫做合成事件(SyntheticEvent),而其自定义事件系统的动机主要包含以下几个方面。react会对事件先进行注册,将事件统一注册到。唯一的标识key来对事件函数进行存储。提供一个抽象的跨平台事件机制。

2023-03-27 13:46:13 96

原创 vscode好玩的写代码小插件power mode以及配置

【代码】vscode好玩的写代码小插件power mode以及配置。

2023-03-22 21:31:54 956

原创 React中setState和replaceState的区别

使用setState()当前状态和先前状态时会合并。replaceState()抛出当前状态,并仅用您提供的状态替换它。通常setState()使用该命令,除非您出于某种原因确实确实需要删除所有先前的键。您也可以将状态设置为false/ nullin setState()而不是使用replaceState()。

2023-03-21 19:35:02 46

原创 css图片以及背景图片模糊化

【代码】css图片以及背景图片模糊化。

2023-03-20 21:24:28 683

原创 react、umijs中添加购物车小球的抛物线--上代码

【代码】react、umijs中添加购物车小球的抛物线--上代码。

2023-03-20 20:53:18 386 2

原创 rem移动端适配

【代码】rem移动端适配。

2023-03-20 20:45:40 41

原创 面试题总结

因为在项目中,可能不同组件会有相同的功能,比如控制元素的显示和隐藏,如果他们的变量和规则也完全相同的话,就可以把这个功能单独提取出来,放在`mixin.js`中,再引入,就可以实现一样的功能了。`render`函数中的`jsx`语句会被编译成我们熟悉的js代码,在`render`过程中,`react`将新调用的`render`函数返回的树与旧版本的树进行比较,这一步是决定如何更新 DOM 的必要步骤,然后进行 `diff` 比较,更新dom树。在类组件中`render`函数指的就是`render`方法;

2023-02-20 21:18:37 69

原创 说说Connect组件的原理是什么?

真正连接Redux和React,它包在我们的容器组件的外一层,它接收上面的Provider提供的store里面的state和dispatch,传给一个构造函数,返回一个对象,以属性形式传给我们的容器组件。接受Redux的store作为props,通过。在原本应用组件上包裹一层,使原来整个应用成为。传递给子孙组件上的connect。connect是连接。

2023-02-20 21:15:54 56

原创 说说你对fiber架构的理解?解决了什么问题?

dom diff树变成了链表,一个dom对应两个fiber(一个链表),对应两个队列,这都是为找到被中断的任务,重新执行。为每个增加了优先级,优先级高的任务可以中断低优先级的任务。然后再重新,注意是重新执行优先级低的任务。增加了异步任务,调用requestIdleCallback api,浏览器空闲的时候执行。

2023-02-20 21:15:42 40

原创 说说React生命周期中有哪些坑?如何避免?

二、componentWillMount 在 React中已被标记弃用,不推荐使用,主要原因是新的异步渲染架构会导致它被多次调用。三、componentWillReceiveProps 同样被标记弃用,被 getDerivedStateFromProps 所取代,主要原因是性能问题。如果没有添加错误边界处理,当渲染发生异常时,用户将会看到一个无法操作的白屏,所以一定要添加。同样是由于新的异步渲染机制,而被标记废弃,不推荐使用,原先的逻辑可结合。

2023-02-20 21:12:04 112

转载 前端面试题总结!

state主要作用是用于组件保存,控制及修改自己的状态,它只能在constructor中初始化,state是可以被改变的,state放改动的一些属性,比如点击选中,再点击取消,类似这种属性就放入带state中,注意:没有state的叫做无状态组件,多用props少用state,多写无状态组件,注意:修改state的值时,必须通过调用setState方法,当我们调用this.setState方法时,React会更新组件的数据状态,并且重新调用render方法。用户可以节省时间,提高速度。

2023-02-18 08:28:52 75

原创 Umijs路由鉴权的实现代码

在.umirc.ts定义路由,在需要的路由中加入wrappers,参数为我们定义的auth文件的路径。在src中创建wrappers文件夹以及auth.tsx文件,auth文件中书写判断。

2023-02-16 13:46:53 361

原创 对于React的理解以及它有哪些特性?

说说你对react的理解?有哪些特性?

2023-02-16 09:15:01 88

原创 Git常用命令

git常用命令,是一个开源的分布式版本控制系统

2023-02-13 15:32:53 136 1

空空如也

空空如也

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

TA关注的人

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