公告:携程集团2022年秋季校园招聘会内推!!

CSS实现防止按钮重复点击,双击进入两次单机的情况

前言

之前有文章写过如何避免双击进入两次单机的情况,当然你也可以通过节流来实现,实现的方案很多,今天主要介绍一下如何通过css来实现,也就是css来实现按钮节流。

实现思路

我们可以用pointer-events 或者disabled等方式,对按钮进行节流,如何操作呢?

实现方案

pointer-events加css的动画来控制,也就是动画时长时间内只能点击一次,代码如下:

刨析webpack模块加载及模块联邦

前言

关于webpack模块联邦,之前有文章提及过,详细请看Webpack5 新特性模块联邦介绍和应用,关于webpack模块联邦,我们已经在项目中用过很多,本文主要讲讲webpack模块加载,及模块联邦的一些原理性的东西,希望对您有所帮助。

webpack模块加载

首先,我们看下webpack是如何加载一个模块的,通过解析webpack打包之后的代码,我们发现,webpack对CommonJS规范和ES6 module规范 ,解析模块加载差不多,仅仅在导出的时候有所区别,因为es6经常是export default方式导出。我们看源码如下:

css实现模糊镜效果及渐变字体和text-shadow冲突解决方案

前言

今天主要介绍2个css特效,一个是css实现模糊镜效果,就是一个返回顶部标签,或者固底标签,网页滑动的时候看到网页滑动过的部分是模糊的。类型模糊镜子的效果,看哪里哪里背景是模糊的。还有就是解决一个渐变字体或者图片字体添加text-shadow,阴影会在文字顶部的问题。

css实现模糊镜子

实现高斯模糊,我们用filter的blur属性,但是高斯是高斯元素本身。其实有个高斯底部的属性,叫

backdrop-filter

就可以轻松实现刚刚说的效果。 注意:backdrop-filter的当前背景需要一点点透明,不然看不到底部了。实现案例如下:

后端response返回一张图片,前端如何下载?

前言

之前文章关于文件下载介绍过很多,当然也有图片下载的,例如跨域图片下载JFIF格式解决方案及前端zip包下载,后端返回的是一张cdn的图片地址,我们如何下载?之前的文章介绍了下载方式及遇到的问题。

但是问题来了,后端返回cdn地址,我们前端下载是经过了转换的,不是原始的图片,假如后端图片大小是30kb,经过了压缩,但是我们经过了转换之后图片大小通常还是60kb,并非是原始的后端图片的大小。那么如何原封不动的下载后端返回的图片呢?直接reponse里面返回图片给到前端,前端如何下载呢?

前端下载后端返回的文件有很多方式,其实reponse中返回图片或者excel,分为get请求还是post请求,假如是get请求方式,那么很简单,excel的化,直接打开这个后端接口的地址就可以下载了,图片可以直接模拟点击,下载后端接口地址的图片就可以了,但是post方式不行,需要我们ajax请求之后下载,那么对于post形式的response里面是图片或者视频,我们不管后端是数据流还是二进制buffer,下载形式都是一种,下面我来介绍一下。

react父组件调用子组件的方法小结

前言

本文是小结类文章,主要总结一下工作中遇到的父组件调用子组件方法。当然除了用ref之外还有很多其他方式,本文仅仅列举ref的方式。分别介绍父子组件都为class;父子组件都是hooks;父组件是class子组件是hooks;父组件是hooks,子组件是class的各种情况的调用方式。

父子组件都为class

父子组件都是class,父组件调用子组件方式比较传统,方法如下: