自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 React生命周期详解(图解)

React 初始化阶段,通过super来绑定组件身上的props1、constructor阶段、通过super来绑定组件身上的props2、static getDerivedStateFromProps(),就是从props里面导出state生命周期的功能实际上就是将传入的props映射到state上面。3、componentWillMount()/UNSAFE_componentWillMount初始化页面4、render()5、componentDidMount,这个阶段既可以调取数据了。

2021-01-24 20:01:43 1007 1

原创 javascript如何写淘宝接口,方法及其总结

写淘宝接口你首先需要了解的一些知识1、html,css,javascript。了解什么是同源策略,和非同源策略以及我这里用JSONP协议;首先写思路://遍历data1:Data1.forEach(item=>{Str+=`${Item[0]}`})}然后把str方剂oUl里面oUl.innerHTML=str这里基本完成一级菜单下边是二级菜单的思路:淘宝里面二级菜单的对象名是magic所以要先保存一下magicVar magic=data.magicIf(ma

2020-10-25 16:10:41 698 4

原创 three.js 开发的demo 分享3d视觉海报

three.js demo

2023-02-15 16:56:59 179

原创 前端常用的插件

Auto Rename Tab – 常用于补全标签Better Comments --用于注释颜色,可以进行配置:打开vconsole的 setting.json 文件就可以进行配置"better-comments.tags": [ { "tag": "!", "color": "#FF2D00", "strikethrough": false, "backgroundColor": "transparent" }, { "tag": "?",

2022-04-25 11:26:37 270

原创 前端自动化工具&&前端代码规范

项目要使用git进行代码提交时,使用叫pre-commit的git钩子,在调用git commit 命令时自动执行某些脚本检测代码,若检测出错,则阻止commit代码,也就无法push,保证了出错代码只在我们本地,不会把问题提交到远程仓库【1】 安装huskyhusky:husky提供了一套git hook,我们可以在commit前进行我们的代码检查npm install -D husky --save【2】在package.json中设置我们需要的git hooks{ "husky": {

2022-01-05 17:34:04 642

原创 git 容易遗忘的那些事

背景github 需要添加一台新的电脑首先你需要检查你的电脑上是否生成过sshkeys1、 进入到根目录下输入该指令 cd ~/.SSH 检查是否有id_rsa.pub,如果有就代表你有生成过如过生成过,那么直接可以链接你git 上创建的新仓库git remote add origin 仓库的ssh地址git push -u origin master...

2021-12-16 16:16:23 92

原创 翻牌动画源码

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document&l

2021-11-25 16:39:11 207

原创 hooks封装-发送验证码

//输入绑定当前dom,传入倒计时,以及发送过后显示的文本,和发送成功后的回调函数,抛出了一个点击发送事件import {useCallback, useRef} from 'react';export default function useSendCode({codeDom, countTime, codeText, sendSucCallBack}) { const codeLoading = useRef(false); const codeTimer = useRef(null);

2021-11-24 20:56:22 438

原创 react hooks在swiper5以下中去修改状态失败问题

swiper官方文档提供的原生api是通过new一个swiper实例去调用方法,但是在hooks里面当我想获取到当前的轮播索引的时候却发现不能去存储到我的状态里面,但是我通过改写了一些其他方法发现也不行,应该是swiper new了一个实例之后,不能set其hooks里面的状态,然后我就改写了swiper6的方式去写发现就没有这个问题了是可以修改状态的,代码对比如下:这是swiper5版本下的 const initSwiper = useCallback(() => { var slid

2021-08-09 17:55:11 328

原创 一个案例让你看懂js中的不可枚举属性

enumerable控制了你是否是可枚举的属性,为false为不可枚举属性反之为可枚举属性,也就是我们可以访问到的属性var person = { name: 'gopal', }; person.age = '21'; person['country'] = 'India'; Object.defineProperty(person, 'salary', { value: '80,000$', enumerable: false, }); document

2021-08-03 15:19:16 179

原创 antiShake

// export const antiShakes = (Refs, shake) => {// function debounce(fn, wait) {// var timer = null;// return function () {// if (timer !== null) {// clearTimeout(timer);// }// timer = setTimeout(fn, wait);//

2021-08-02 17:13:35 271

原创 前端性能优化react(图片loading预加载)

图片预加载,可以提前加载比较大的图片,或者gif图,防止白屏 function loadImage_gif(url, callback) { var img = new Image(); //创建一个Image对象,实现图片的预下载 img.onload = function () { img.onload = null; callback(img);//回掉函数 }; img.src = url; } useEffect(() =>

2021-08-02 17:01:15 1857

原创 TypeScript基础

【 一 】传递参数的个数:多传或者少传报错优点方便后续更新迭代少传或者多传报错function buildName(fristName: string, lastName: string, ageName: string) {return fristName + ‘’ + lastName + ageName;}let result1 = buildName(‘bob’, ‘pop’, ‘aa’);console.log(result1);未传递的参数的时候可以设置默认值:function

2021-05-13 20:35:05 224

原创 关于ESlINT和prettier-code 冲突

react使用eslint的三种代码检测方案command+s保存代码的时候发现会有红色波浪线警告,虽然不影响功能但是不美观,而且影响自己如果报错了影响排错 我们安装完prettier之后设置prettier会自动进行代码格式化,因为他只关心代码格式美观性,而eslint就可以规范你的编码风格,提升代码质量,但是eslint的代码格式化有盲区,只针对js,jsx,tsx,不能格式化html,css,less,sass,所以我们要保证兼容的情况下,要么修改prettier的规则,要么修改eslint的规则

2021-04-29 17:08:29 411

原创 stylelint --fix found some errors. Please fix them and try committing again.

git 的时候碰见的这个bug,通过 提交的时候可以换成这个就行了 git commit --no-verify -m “xxx”

2021-03-23 10:41:43 1225 1

原创 ...扩展运算符常见的一些的用法(es6)

一、去重example:let arr=[1,1,1,2,2,2,3,3,3]console.log(…new Set (arr))结果是1,2,3二、展开字符串变成数组exampel:let str=[…‘hellow’]console.log(str)结果是[“h”, “e”, “l”, “l”, “o”, “w”]三、合并数组example:let arr=[1,2,3,4]let arrs=[9,8,6,5,5,5,5,8,8,8,8]let newArr=[…arr,…

2021-03-15 17:27:43 235 1

原创 React hooks中如何通过ref获取到原生dom节点

通过ref进行name绑定,通过创建变量使用useRef,通过name.curren进行取值

2021-03-12 15:30:40 3638

原创 typescript学习,每天进步一点点

1、声明的几种数据类型:number=1 :string=“xx” :boolean=“true”:number[]=[1,2] Array< number>=[1,2]泛形 void function hellow():void{alert(“xx”)泛形一般表示没有返回值}null 表示对象值缺失undefined 表示未定义的值naver 代表重来不会出现的...

2021-03-12 11:22:09 140

原创 函数的防抖、截流

防抖:触发高频事件后 n 秒内函数只会执行一次,如果 n 秒内高频事件再次被触发,则重新计算时间;例子:当使用如下防抖代码,input输入框监听了input事件后,可以再指定时间内不触发多次input事件;function debounce(fn) {let timeout = null; // 创建一个标记用来存放定时器的返回值return function () {clearTimeout(timeout); // 每当用户输入的时候把前一个 setTimeout clear 掉timeou

2021-03-02 18:17:21 184 1

原创 游戏前段日常问题总结

iphonex移动端适配方案const [style,setStyle]=useState({})useeffect(()=>{if(document.body.offsetHeight/document.body.offsetWidth<750(iphonex的宽)/实际页面的宽){setStyle({transform:"scale(0.8)"})}},[])

2021-03-01 15:22:34 167

原创 Git 常见命令总结

git init 初始化git pull 拉取代吗git add . 保存添加和修改但不包括删除的文件,添加 或者git add-A 保存所有的修改git commit -m “本次提交描述一”git push 推代码git branch 查询当前分支或者可以查询并切换到分支git branch “xxx”git checkout main 切换到main分支切换到分支git commit -m ''提交到当前分支git push git checkout main 切换到main主分支gi

2021-02-28 14:36:26 116

原创 mac电脑使用快捷键

1、control+command+f实现全屏幕或者半屏幕切换

2021-02-24 19:48:04 165

原创 前端常问面试题总结

面试总结1、介绍一下你项目中的重难点2、父子组件传递参数3、state和props区别4、props能否被改变,虚拟dom diff算法5、redux、react生命周期6、原型原型链,继承的几种方式,前后端联调7、null和undifined 的区别 ,unll和undifined有没有toString()方法8、antd design api form 添加回显9、flex布局 口述三栏布局10、position的几个定位区别2021 01.261、自我介绍2、说一下你做的这

2021-01-26 21:11:33 546

原创 React的调和过程

diff策略说道调和,那么我们不得不说react调和的三种策略了。1、treediffer,不会跨级进行比较,同级之间进行对比,如果发现有不同,那么将会删掉整行dom元素,2、component diff 不同组件会直接删掉,对于相同组件继续按层级对比3.element diff 对于元素提供三种操作删除、插入、移动,基于key可以提高效率,否则需要循环新结点一次循环旧结点一次才能找到变化举个例子 :react当我们设置setstate状态进行改变的时候就会触发所谓的调和过程,其实调和过程有好几种

2021-01-23 13:47:03 437 2

原创 React antd Design4x 版本 form表单如何进行清空

React antd 4版本class 版本 form表单如何进行清空我在从3版本升级到4版本的时候发现内容改了很多,在点击提交按钮清空表单的时候我发现没有不能像如下这麽用了,网上找了很多方法都不能用,都是form={form},要不就是hooks版本的就很烦,没有找到我想要的,最终在自己的不断尝试下,给搞出来了。用法如下antd 4 上面提供的是hooks版本,我用的是class版本写的请在你的form 表单里这样写:用ref进行绑定,4 版本中class表单的值都是name绑定的,所以当

2021-01-15 19:08:16 1407

空空如也

空空如也

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

TA关注的人

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