自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【leetcode】219.存在重复元素 II

写本专栏目的的主要是提供一些解题思路,若有不足,欢迎指正!!!给你一个整数数组nums和一个整数k,判断数组中是否存在两个 不同的索引i和j,满足且。如果存在,返回true;否则,返回false。此题是的扩展版。

2023-04-14 21:47:33 556 1

原创 【leetcode】217.存在重复元素

写本专栏目的的主要是提供一些解题思路,若有不足,欢迎指正!!!给你一个整数数组 nums。如果任一值在数组中出现 至少两次 ,返回 true;如果数组中每个元素互不相同,返回 false。

2023-04-14 20:10:30 274

原创 【CSS】单边阴影、双边阴影、三边阴影

实现阴影,先来了解一下box-shadow这个属性。box-shadow属性用于在元素的框架上添加阴影效果。你可以在同一个元素上设置多个阴影效果,并用逗号将他们分隔开。该属性可设置的值包括阴影的 X 轴偏移量、Y 轴偏移量、模糊半径、扩散半径和颜色。好了,准备工作都做好了,那就直接进入主题吧。

2023-04-09 16:26:54 3589

原创 【CSS】实现梯形

简单说一下背景,就是需要实现一个展开收起的按钮。那我第一个想到的方法,可不就是border自己画嘛。

2023-04-09 12:24:06 2860

原创 【CSS】实现圆、二分之一、四分之一圆

最近项目重构,其中有个模块涉及到的交互全改了,跟css挂钩的点很多,这里简单做个记录。要实现圆首先得知道这个属性,引用MDN上的解释:CSS 属性 border-radius 允许你设置元素的外边框圆角。当使用一个半径时确定一个圆形,当使用两个半径时确定一个椭圆。这个(椭)圆与边框的交集形成圆角效果。简单来说就是边框的四个角是由这个属性控制的。效果如下:当然,这四个边的圆角也可以自由组合设置,这里就不一一举例了。

2023-04-09 11:11:26 1684

原创 【eslint】Error: Unexpected lexical declaration in case block

可以看到,case 1 和case 2 中定义的字段,理论上应该是互不影响的,但由于作用域的提升,case1 会影响到 case 2。下面是官方文档上的示例:(不正确的写法就是去掉花括号,这里就不贴出来了)

2022-10-01 13:53:53 528

原创 【TS】Error: Binding element ‘age‘ implicitly has an ‘any‘ type

OK,后续遇到其他场景再来补充。

2022-10-01 13:21:16 695

原创 【TS】Error: Element implicitly has an ‘any‘ type because expression of type ‘string‘ can‘t be used to

好了,我们再考虑另一种场景,如果我obj对象里的属性很多,我很多地方都会用到obj对象里的key,总不能一个个都是keyof或者keyof typeof一下吧,有没有更好一点的方案呢?可以看到,这两种方式,极其相似,这里为什么不用typeof,是因为Person是我们定义的类型,而不是对象,两种方式得到的结果都是一样的。如果我想给obj新增一个属性呢?该报错一般出现在使用对象获取值的场景。

2022-10-01 10:36:38 6056

原创 【TS】Error: Property ‘click‘ does not exist on type ‘Element‘

document.querySelector方法的返回结果是Element或者null,所以我们使用HTMLElement或者null没有问题,那如果是一个类似数组的对象呢?

2022-09-30 23:07:18 1040

原创 【TS】Error: Property ‘children‘ does not exist on type ‘X‘

出现这个报错的原因,是因为我们的props中并没有定义children类型,在PersonProps中加上该类型即可。除此之外,也可以通过ReactFunctionComponent泛型接口,props默认定义为{}如果我们的子组件不需要传递给Person组件,则无需定义children,因为不会用到。最近,在做项目模块的迁移,新项目需要使用ts,遇到的问题有点多,记录一下。OK,本文到此结束,如有不足,欢迎大家多多指正呀!

2022-09-30 22:32:51 1813

原创 如何解决同一文件二次上传无效问题

文件第一次上传后,修改文件内容后,不刷新页面,再次上传该文件,就出现如下图所示的错误。(刷新页面可以正常上传,换成另一个文件也可正常上传)前后两次的文件名并没有发生改变,没有触发input的onchange的事件。在接口回调里将input的value置空即可。当然,如果有其他方法,也可在评论区留言哦!

2022-09-30 21:15:21 1691 1

原创 【CSS】CSS实现水平垂直居中

元素水平垂直居中的场景很常见,常用的方法如下:(以下方法在chorme测试可行)

2022-08-27 16:36:13 346

原创 【React】unmountComponentAtNode卸载组件

从 DOM 中卸载组件,会将其事件处理器(event handlers)和 state 一并清除。如果指定容器上没有对应已挂载的组件,这个函数什么也不会做。如果组件被移除将会返回 true,如果没有组件可被移除将会返回 false。很明显,卸载不成功。这也是我踩坑的地方,如果想要插入的元素也被卸载掉,可以插入到。但这不重要,项目目前的版本我也升不上去(历史原因)。没想到,这两天还在这里栽了跟头,头大。的节点中,不要直接插入到根节点。,点击卸载组件按钮之后,不见了,说明卸载成功了。的时候,会被卸载掉吗?...

2022-08-27 10:29:54 4354

原创 【CSS】CSS实现三角形(二)

伪元素实现三角形

2022-08-20 19:45:17 694

原创 【CSS】CSS实现三角形(一)

如何使用border和linear-gradient实现三角形

2022-08-20 16:42:17 3625

原创 Mac如何关闭指定端口

Mac如何关闭指定端口

2022-07-01 22:33:31 6134

原创 【Git】push时error: failed to push some refs to ‘xxx.git’

git push时报错:! [remote rejected] 20220705 -> 20220705 (pre-receive hook declined)error: failed to push some refs to 'xxx.git'

2022-07-01 22:08:08 2485

原创 【Git】如何修改分支名

​直接入正题,上一篇文章提到,创建分支时报错,除了文中提到的解决方案(删除分支)外,还有一种方法就是,我把现在的分支名改了不就行了吗?

2022-06-19 17:33:12 21753 1

原创 【Git】创建分支报错(cannot lock ref ‘refs/heads/***/***‘)

解决git报错:cannot lock ref 'refs/heads/***/***': 'refs/heads/***'exists; cannot create 'refs/heads/***/***'

2022-06-19 16:48:37 10190

原创 【CSS】flex布局中子元素设置宽度失效

先来盘一盘我自己遇到的问题场景,大概如图所示:前提条件:box使用了flex布局,让div1和div2两端对齐,box未设置宽度,其宽度是自适应的,div2的宽度是固定的,div1的宽度理想状态是box的宽度减去div2的固定宽度。简单来说就是,div2固定宽度,div1宽度自适应占满剩余空间。问题现状:div1长度没超长的时候,没有问题。但当div1的内容长度超长了,div2设置的宽度失效,会被压缩。而问题的原因主要在于flex的flex-grow和flex-shrink属性。先.

2022-02-18 20:59:25 9260

原创 【JS】数组去重的几种方式

数组去重的方法有很多,接下来,讲几种常见的方式:一、includes方法 + for循环includes()方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回true,否则返回false.const array = [1,2,3,2,4,6,3,1, undefined, NaN, 'NAN', null, true, 'true', false, 'false', NaN, undefined];const unique = (arr) => { ...

2022-01-27 14:16:13 1549

原创 【CSS】虚线的两种实现方式

最近,在做一个需求,其中涉及到了一个下划线的问题,大概效果要长这样:(前面的文案打了马赛克,可能这个图看着有点奇怪,这不重要,主要是看虚线)看到这个图的第一反应就是,害,不就是个边框吗,这有啥难的?......

2022-01-14 14:46:09 11951 2

原创 【JS】非非(两个感叹号)的使用场景

简单来讲,逻辑 "非非"就是在逻辑 "非"(!)的基础上再 "非" 一次。先来说一下逻辑 "非" ,可以理解为就是取反,返回的是一个布尔值。那么,什么时候我们会用到 !! 呢?一般是需要将其他类型强制转换成boolean类型的情况下,比如以下四种场景:null 和 undefined 为 false 空字符串为 false,非字符串为 true 数值 0 返回 false,其他为 true 任意数组、对象返回 true(包括空数组、空对象)以第一种情况为例:let a;..

2021-11-27 11:32:01 506

原创 【CSS】标准盒模型和怪异盒模型

盒模型的组成:content(内容) padding(内边距) border(边框) margin(外边距)那常见的盒子模型有哪些呢?主要是两种:标准盒模型和怪异盒模型。它俩有什么区别呢?区别主要在于宽高的计算。1、标准盒模型如上图,我们可以很明显的看到这里的宽高就是content的宽高。宽:width = content(内容)的宽高:height = content(内容)的高2、怪异盒模型(IE盒模型)如图所示,怪异盒模型的宽高是包括了content、.

2021-10-27 15:15:49 731

原创 Mac 修改Hosts文件的方式

在查了几次资料之后,我实在是忍不住了。这个记性啊,真的是堪忧!还是记下来吧,害。。。(向生活低头)1、修改终端命令(1)打开终端,输入命令行:sudo vi /etc/hosts(2)输入本机密码后,会自动打开hosts文件。键盘输入i(插入),修改完成后,按 esc 键退出插入页面 保存退出:按住shift+:键,输入w和q,再enter键 不保存退出:输入q和!键,再enter键2、...

2021-10-20 12:19:11 27128

原创 【nginx】重启nginx报 ​“/usr/local/var/run/nginx.pid” failed

正巧今天遇到了,先记录一下解决方案。重启nginx时报错:nginx: [error] open() "/usr/local/var/run/nginx.pid" failed (2: No such file or directory)问题原因:找不到nginx.pid 这个文件。当我们关闭nginx时 (nginx -s stop) , nginx 会把 /usr/local/var/run/ 路径下名为nginx.pid 的文件删掉。解决方案:1、直接启动ngi..

2021-10-08 19:29:37 2736

原创 【正则表达式】字符匹配篇

之前是写在另一个平台,但更新的断断续续,这次打算回炉重造,整理一波。1.创建正则表达式两种方式:字面量:由斜杠包围而不是引号包围 构造函数的字符串参数:由引号而不是斜杠包围// 使用正则表达字面量var regex = /ab+c/;// 使用RegExp对象的构造函数var regex = new RegExp("ab+c");2.正则匹配正则表达式的精髓,主要在与它的模糊。先来看一个基础小例子:var regex = /hello/;console.log(..

2021-09-19 16:15:34 26266

原创 【css】解决z-index失效或者不起作用

说来惭愧,最近刚犯错这个错误。为避免再犯,还是记录一下吧。在出现z-index设置不起作用,没有效果的情况下,我们首先检查z-index设置的元素是否存在以下两种状况:该元素是否设置了定位 该元素的父级是否已经设置了z-index(检查需比较的元素是否同在一个层叠上下文)为什么要检查这两种情况呢?我们先来说结论:z-index只作用在使用了定位的元素上,也就是我们经常用的position属性,static除外(如果不是定位元素,那我们设置z-index是不会起作用的) 同一个父级元素下的元

2021-09-19 16:13:02 14143

原创 【Antd】Table组件数据重新渲染后筛选项如何清空

先来说一下我遇到的场景:如上图,在点击操作按钮之后,会重新请求列表数据,列表数据更新。这个时候如果我先筛选了Age列, 再点击操作按钮更新数据会发现,列表上渲染的数据是经过筛选之后的,筛选项并没有被清空,依旧那么亮眼。为了更好的描述,我把操作按钮换成了Tab页,可以先来对比一下两个页面:嘿嘿,我太懒了,大家能区分就行。上图都是没有筛选的情况,如果我筛选之后再切换Tab,就变成了:筛选条件并没有被清空,但这种情况下,我们希望在切换tab的时候筛选项是清空的,这个时候...

2021-09-19 15:37:46 5249

原创 【Antd】如何将组件设置为中文

这个问题还是很常见的,像我正常的安装antd:yarn add antd使用的时候发现不对,怎么是英文的?要转换成中文的也很简单,只需要两步:1、引入zh_CNimport zh_CN from 'antd/lib/locale-provider/zh_CN';2、用ConfigProvider包起来import Table from './Table';import zh_CN from 'antd/lib/locale-provider/zh_CN';imp..

2021-09-15 18:19:12 2956

原创 【Git】git stash 和 git stash pop

先来思考一下,为什么会使用 stash 命令?在项目开发中,基本都会遇到这样的情况:本来你在自己的分支上愉快的开发功能A,但是突然加了一个优先级很高的需求B或者有bug需要先修复掉。但这个时候,你新做的功能A刚开发到一半,总不能先提交A再开发B,或者直接拉个新分支切过去吧?(可以倒是可以,但是不推荐)在这里,我们就会使用到 git stash 命令。1、git stash暂存工作区修改的内容可以stash多次,从最近一次的commit读取相关内容。2、git stash pop.

2021-09-11 17:43:09 40243 2

原创 【npm】npm 查看、删除、废弃版本

前面提到过,在一个npm包正式发布前,大多会有测试版本。版本一多,就很容易混淆,甚至忘记版本号。。。一、查看历史版本言归正传,如何查看已发布包的历史版本呢?使用命令:// 查看历史版本信息(最多100条)npm view [<pkg>][@<version>] versions// 假设我的包名是test 版本号是1.0.0npm view test@1.0.0 versions一般来说,这个命令就已经够了,如果发布的版本有100个以上,可能下面的这个

2021-09-09 20:43:22 4059 3

原创 【JS】数组和字符串之间的转换

最近,我算是和数组杠上了,今天来说说数组和字符串之间的相互转换。你知道的都有哪些方法呢?下面说一说比较常见的几种,嘿嘿(不常见的我也不一定知道啊)。一、数组转字符串1、toString()返回一个字符串,表示指定的数组及其元素举个栗子,看下效果:const arr = [1,2,3,4];arr.toString(); // "1,2,3,4"现在确实是个字符串了,但问题又来了,有什么办法可以把中间的逗号去掉吗?简单点,直接使用replace或者replaceA

2021-09-04 23:11:09 2569

原创 【JS】数组的新增(插入)、修改、删除

最近欠了太多账了(头秃),趁着周末,总结一波(我实在是太容易混淆了)。对数组进行增删改的操作,项目中还是比较常见的。奈何脑容量有限,思来想去,还是写写更能加深印象。先说明一下,方法的定义是参考的MDN上面的。1、push方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度。语法:arr.push(element1, ..., elementN)elementN:被添加到数组末尾的元素let arr = [1,2];let count = arr.push(3);

2021-09-04 18:16:51 3262

原创 【JS】toString和toLocaleString的区别

toString的方法相信小伙伴们都不陌生,转字符串常用的方法嘛。toLocaleString和toString基本上没有什么不同,在使用过程中注意两者的区别就可以啦!让我们先来看一些小栗子:const str = [1,2,3];str.toString(); // "1,2,3"str.toLocaleString(); // "1,2,3"const str = 123;str.toString(); // "123"str.toLocaleString();

2021-08-31 12:04:38 597

原创 【es6】Map数据结构

前言很早之前向小伙伴们推荐了阮一峰老师的es6入门一书,结果,到头来,自己倒是忘了不少。正巧最近用到了Map,整理整理,方便后续自己查阅。Map是es6提供的一种数据结构。不得不说,Map的查找速度比其他常用的方法确实要强上不少。属性和基本方法1. size属性返回Map结构的成员总数const map = new Map();map.set('name', 'hsl');map.set('age', '20');map.size; // 22. set(

2021-08-29 17:18:09 669

原创 【css样式】font-size设置小于12px失效

不知道你有没有遇到这样的情况,设置了font-size为10px,打开控制台审查元素也显示的是10px,但浏览器渲染的字体大小还是没有发生改变。这是因为浏览器(以Chrome为例,其他没测试过)在中文语言下展示的最小字体是12px,低于12px的,都会当作12px处理。这里提到的中文语言,跟页面上展示的内容没有什么关系,而是取决于用户在chrome://settings/languages中设置的默认语言。如果要在浏览器解决这个问题,有两种方案:方法一使用transform: sc.

2021-08-23 12:49:27 2679

原创 webpack第3章 -- 资源解析

在了解webpack基本核心概念之后,来看一下webpack是怎么对资源进行解析的:一、解析es6webpack原生代码是支持对js的解析的,但如果有es6的语法,就需要借助babel-loader来实现了。需要做的配置如下:babel-loader babel的配置文件.babelrc(babel-loader依赖babel) 增加babel preset配置1、安装依赖npm i @babel/core @babel/preset-env babel-loader --sav

2021-07-25 14:47:19 149 1

原创 【npm】npm安装报错:reason: getaddrinfo ENOTFOUND server server:80

一般出现这个问题的原因是之前设置了默认的仓库地址(我自己这边是这个原因导致的),解决方案如下:解决办法: 1、执行:npm config get proxynpm config get https-proxy如果返回值都为空,下面的这个设置就可以跳过啦如果返回值不为null,继续执行:npm config set proxy nullnpm config set https-proxy null2、执行:npm config set registry http://regis

2021-07-25 13:55:09 5929 1

原创 【Git】git 如何修改分支名

其实这个场景不太能遇到(要是一开始就写错了,当我没说),按照我的做法,我会直接把老分支删掉,重新拉一个新的分支。今天的重点也是这个,不过不同于页面的操作,如何通过命令来修改分支名呢?举个例子:将oldName改为newName,需要执行什么命令呢?分两种情况:1、未推送到远程仓库重命名本地分支git branch -m oldName newName2、已推送到远程仓库重命名远程分支对应的本地分支git branch -m oldName newName删除远程分

2021-07-24 10:54:54 4206 2

空空如也

空空如也

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

TA关注的人

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