自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 文字缩进及弱网络环境下用文字代替图片的兜底方案

如何对文字进行缩进以及如何在网络情况很不好的情况下用文字来代替图片今天我们就来说一下:先来说一下如何对文字进行缩进:相信有很多刚学习前端的小伙伴们,在写登录表单时经常会遇到一个问题是想要把‘密码’进行缩进达到和‘用户名’相同长度,但是使用html提供的&nbsp无法完美的达到目标!这里有一个css属性可以满足我们的要求,那就是text-indent(它可以进行首行的缩进)。现在我们再来说一下如何用文字代替图片(在网络不好的情况下):当我们的网速很慢时,CSS/Javascript加载不了

2021-06-09 15:02:09 222 2

原创 react中的回调地狱详细解析

标签:function 地狱 示例 代码 理解 调用 回调回调地狱 (着重于回调地狱的理解,解决办法网上有很多示例)这个问题一直围绕着我,但是自己也没有去深究 一直的理解就是可以使用promise解决,代码布局比较乱,今天为了加深理解就写一下笔记1.解释代码示例var sayhello = function (name, callback) {setTimeout(function () {console.log(name);callback();}, 1000);}sayhello(

2021-04-17 10:34:52 462

原创 react-hook完全上手指南

1 Why Hook?1.1 从React组件设计理论说起React以一种全新的编程范式定义了前端开发约束,它为视图开发带来了一种全新的心智模型:React认为,UI视图是数据的一种视觉映射,即UI = F(DATA),这里的F需要负责对输入数据进行加工、并对数据的变更做出响应公式里的F在React里抽象成组件,React是以组件(Component-Based)为粒度编排应用的,组件是代码复用的最小单元在设计上,React采用props属性来接收外部的数据,使用state属性来管理组件自身产生的

2021-04-17 10:31:08 214

原创 详解react高阶组件(HOC)的用法以及它使用的场景

谈点:一篇面向初学者的 HOC 介绍。高阶组件听起来挺唬人的,只看名字恐怕不是那么容易明白究竟是何物,而且通常来讲高阶组件并不是组件,而是接受组件作为参数,并且返回组件的函数。早期利用 ES5 的 mixin 语法来做的事,基本都可以使用高阶组件代替,而且能做的还有更多。前言写这篇文章的起因是其他关于高阶组件(Higher-Order Components)的文章,包含官方文档,都令初学者感到相当困惑。我知道有高阶组件这样一个东西,但不知道它到底有什么用。所以,想通过一篇文章来对高阶组件有一个更好的理解

2021-04-17 10:25:45 2501

原创 react-hooks详解(常见的方法的使用和解析以及区别)

1、什么是hook?react hook是react 16.8推出的方法,能够让函数式组件像类式组件一样拥有state、ref、生命周期等属性。2、为什么要出现hook?函数式组件是全局当中一个普通函数,在非严格模式下this指向window,但是react内部开启了严格模式,此时this指向undefined,无法像类式组件一样使用state、ref,函数式组件定义的变量都是局部的,当组件进行更新时会重新定义,也无法存储,所以在hook出现之前,函数式组件有很大的局限性,通常情况下都会使用类式组件来

2021-04-17 10:19:15 2294

原创 this.props.children详解

React关于 this.props.children 总结propsreact是单向数据流,props是我们从上个组件传值传下来的集合,每一个props都应该对应的是从上个组件传过来的值。但是这里有一个例外,那就是this.props.children,如下所示打印结果this.props.children 的值有三种可能:如果当前组件没有子节点,它就是 undefined ;如果有一个子节点,数据类型是 Object;如果有多个子节点,数据类型就是 Array。所以,处理 this.pr

2021-04-17 10:15:43 773

原创 Axios和ajax的异同点详解以及在express后端使用redirect重定向对ajax无效的原因!

问题描述:自己在使用 express 的 redirect 时,并不进行跳转操作,但是前端是可以接收到整个后端将要跳转的整个页面的 html已经是301状态码,但是页面不跳转原因:使用 ajax 后,后端无法直接让前端进行页面跳转。需要前端进行状态码和后端返回的数据的判断,然后前端自己进行跳转页面。因为 ajax 是一个完整的请求和回掉的过程,header 头是不会变的。我们以前使用后端来让前端跳转原理是通过给浏览器发送一个特殊的 header 然后进行跳转。而 ajax 不会进行更改 heade

2021-04-06 16:28:30 607 2

原创 为什莫react项目中没有webpack.config.js文件(2021-03-21)

当我们使用react的脚手架创建了一个react项目后,一定会有一个疑问,那就是为什么create-react-app创建的项目没有webpack.config.js文件!官方文档提示:默认配置文件都是隐藏的,点开package.json文件,可看到配置的命令是以 “react-scripts *” 来执行,所以打开node_modules文件夹,找到react-scripts文件夹进去, config目录即是你需要找的webpack的配置文件。如果要自定义,**运行npm run eject,**就可

2021-03-21 19:20:18 4756

原创 2021-01-06

今天给大家理一下JAVA 中的访问修饰符 的规定范围吧public 无限制private 同一个类中可以访问default "其他包中的类"不可访问(说下这不是个修饰符,是指默认情况下,就是说同一包中的类可以访问)protected "其他包中非子类"不可访问(即要存在被继承关系,protected关键字就是为了继承而创造的)...

2021-01-06 18:46:02 79

原创 2020-12-25

为什么在react中的JSX代码的外面要加上一个小圆括号?简单的来说,就是为了防止分号插入的bug!

2020-12-25 17:58:00 82

原创 详解onfoce与onblur之间的区别

在我们平时开发网站中,我们一定会经常遇到onfocus和onblur这两个事件,今天就给大家简单介绍一下这两个事件:onfocus 事件在对象获得焦点时发生。请输入: <input type=“text” οnfοcus=“setStyle(this.id)” id=“fname”>当文本框得到焦点的时候,触发setStyle()方法:onblur 事件会在对象失去焦点时发生。请输入: <input type=“text” id=“fname” οnblu

2020-11-15 22:00:20 365

原创 在react中使用jxs时应注意的两点问题

在使用react开发项目的时候,机会都会使用到JSX 语法,它的主要特点就是,凡是使用 到JavaScript 的值的地方,都可以插入这种类似 HTML 的语法。在使用的时候需要有两个注意的点:所有 HTML 标签必须是闭合的,如果写成love就会报错。如果是那种没有闭合语法的标签,必须在标签尾部加上斜杠,比如。任何 JSX 表达式,顶层只能有一个标签,也就是说只能有一个根元素。下面的写法会报错。// 报错,因为根元素的位置有两个并列的标签const lut= tiantian520;//

2020-11-14 15:53:35 267

原创 再次对bind深入理解

我们直接进入主题,bind函数的理解语法:function.bind(thisArg[,arg1[,arg2[,argN]]])首先不看传的参数,bind函数实现的功能就是将function绑定在thisArg环境上,使其可以在thisArg上调用function。听起来这和apply/call的作用好像一样,那到底是不是一样呢?var a={x:1};function foo(){return this.x;}console.log(foo.call(a));//1console.log

2020-11-14 14:30:13 197

原创 js对象中的自定义属性的详解以及使用

说来也有点惭愧哈!(都把react框架学的差不多了,现在才搞明白对象中的自定义属性如何使用)接下来我们直接进入主题:dataset(即对像的自定义属性)在组件节点中可以附加一些自定义数据。这样,在事件中可以获取这些自定义的节点数据,用于事件的逻辑处理。在 WXML 中,这些自定义数据以 data- 开头,多个单词由连字符 - 连接。这种写法中,连字符写法会转换成驼峰写法,而大写字符会自动转成小写字符。如:data-element-type ,最终会呈现为 event.currentTarget.d

2020-11-14 09:52:26 874

原创 详解编码GBK的不可映射字的原因及解决方法

先检查是什么原因造成的问题:1、 查本机区域语言设置中文没有问题2、 此程序可以在eclipse上正常运行右键properties-resource-text file encoding 查是UTF-8解决方法:1、运行是使用javac -encoding UTF-8HelloWorlewww.java编译通过2、记事本打开java源文件,另存为选择ANSI编码编译通过扩展说明:ANSI:美国国家标准协会,系统预设的标准文字储存格式。简体中文编码GB2312,实际上它是ANSI的一个代码

2020-11-10 07:29:28 1615

原创 在cmd上一直报javac不是内部或外部命令的详解及原理

首先得确保你已经把jdk安装好了(此处不再啰嗦),进入今天的主题。其实归其本质,还是因为我们把环境变量没有配置好造成的(不要听这就感觉自己已经把环境变量配置好了,其实不然)。解决方法也很简单1,进入系统高级设置进行环境变量编辑页面2,添加新的系统变量添加JAVA_HOME变量,变量值就写自己的jdk路径,注意这里需要些绝对路径。例如:C:\Program Files\Java\jdk1.8.0_201添加CLASSPATH变量,变量值就写 .;%JAVA_HOME%\lib\dt.jar;%J

2020-11-10 07:06:27 1884 1

原创 详解中括号语法及点语法

点语法:点语法根据对象中的键来获取相应的值.let obj = {a: ‘a’}console.log(obj.a)// ‘a’创建相应的键值对obj.b = ‘b’console.log(obj.b)// ‘b’中括号语法:中括号语法也能根据对象中的键来获取值.let obj = {a: ‘a’}console.log(obj[‘a’])// ‘a’需要注意的是:中括号内的键一般使用引号.由于对象内的键可以是特殊类型如:数字,布尔值这些取值时就不用引号.中括号可以使用变量

2020-11-08 15:19:00 1469 1

原创 详解懒加载原理及其应用

什么叫懒加载,懒加载有是什么作用呢?懒加载其实就是延时加载,即当对象需要用到的时候再去加载。如何进行懒加载呢?自从点语法出现以后,访问一个对象基本就类似于self.clickBtn或是[self.clickBtn],这都是调用的clickBtn的getter方法,因此就可以在getter方法中实现懒加载。因此懒加载其实就是所谓的重写对的getter方法,当系统或开发者调用对象的getter方法时再去加载对象。需要注意的是:重写getter方法时,先判断当前对象是否为空,为空的话再去实例化对象。懒

2020-11-08 15:16:53 346

原创 详解禁用Cookie与Session的问题及其解决的方法

Cookie与Session,一般被认为·是两个独立的的东西,Session采用的是在服务器端保持状态的方案,而Cookie采用的是在客户端保持状态的方案。但为什么仅用了Cookie就不能得到Session呢?因为Session是用Session ID来确定的当前对话对应的服务器Session,而Session ID是通过Cookie来传递的,禁用Cookie相当于失去了Sesison ID,也就得不到Session了。关于如何禁用Cookie?1、启动IE;  2、在“工具”菜单上,单击“Inter

2020-11-08 14:37:12 2215 1

原创 隐藏域在Ajax中的应用

话不多说直接上代码以下是利用隐藏iframe实现的ajax:index.htm ajax.htm 现在我们再来分析这个隐藏域究竟是什么呢?隐藏域就是用来收集和发送信息的不可见元素,对于网页来的访问者来说,隐藏域是看不见的。但是在与服务器进行数据交互式时隐藏域就会将信息(用你设置时定义的名称和值)发送到服务器上。我们在什

2020-11-08 14:19:49 408 1

原创 深入理解JWT

什么是JWT呢?顾名思义Json web token (简称JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。说起JWT,我们先来谈谈基于token的认证和传统的session认证的

2020-11-08 13:58:29 172

原创 深入理解token的作用

概要:Token 是在服务端产生的。如果前端使用用户名/密码向服务端请求认证,服务端认证成功,那么在服务端会返回 Token 给前端。前端可以在每次请求的时候带上 Token 证明自己的合法地位。为什么要使用token呢?因为它能有如下的作用:1.Token 完全由应用管理,所以它可以避开同源策略2.Token 可以避免 CSRF 攻击(http://dwz.cn/7joLzx)3.Token 可以是无状态的,可以在多个服务间共享Token 是在服务端产生的。如果前端使用用户名/密码向服务端请求

2020-11-08 13:38:19 2405 1

原创 TCP/IP网络基础详解

TCP/IP协议(一)网络基础知识参考书籍为《图解tcp/ip》-第五版。这篇随笔,主要内容还是TCP/IP所必备的基础知识,包括计算机与网络发展的历史及标准化过程(简述)、OSI参考模型、网络概念的本质、网络构建的设备等下面是协议层从底层至顶层的一个模型图:一、计算机网络的背景1.1 计算机的发展有人说:“20世纪最伟大的发明就是计算机”,自诞生伊始,计算机经历了一系列发展,从大型通用计算机、超级计算机、小型机、个人电脑、工作站以及现如今笔记本、平板、智能手机等,计算机已经彻底融入了我们的生活

2020-10-22 22:12:46 590 1

原创 原型和原型链详解

一、prototype在JavaScript中,每个函数都有一个prototype属性,这个属性指向函数的原型对象。例如:实例代码:function Person(age) {this.age = age}Person.prototype.name = ‘kavin’var person1 = new Person()var person2 = new Person()console.log(person1.name) //kavinconsole.log(person2.name)

2020-10-22 22:04:22 108

原创 supert()的功能及原理详解!(以及在react都class组件类都constructor中使用super(props)的原因及原理!)

我知道supert是继承constructor的参数,但是为什么在react里面,有一些组件使用了super(props),而有一些没有写,还有在es6里就只是写了supert(),这些区别在哪呢?以及这里的这个constructor(props)…super(props)是起到什么作用呢...

2020-10-22 21:58:48 579

原创 2020-10-21

在class组件的constructor中为什么要使用想使用super()再使用this的缘由。(这个问题很简单!解释如下)super: 它引用当前对象的直接父类中的成员(用来访问直接父类中被隐藏的父类中成员数据或函数)关键就在于被父类隐藏的数据这块。...

2020-10-21 22:03:46 54

原创 操作符的功能及其原理

很简单new操作符功能如下四步:1. 它创建了一个新对象。2.它将构造函数的原型属性和方法挂载到新对象的__proto__(原型指针)上。3.他执行了构造函数并将构造函数的this指向了新对象。4.将这个新对象返回出来了。例子:/自己编写的模仿new操作符的函数/function myNew() {//创建空对象var a= {};//获取参数var [Fn, …arg] = […arguments]//将原型属性方法挂载到对象的指针(_proto)a.proto = Fn.pro

2020-10-17 19:56:45 167

空空如也

空空如也

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

TA关注的人

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