自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 uni-app引入echarts-for-wx,formatter 自定义函数不起作用的问题

原因:vue的data里不能放函数,会被序列化解决方法:只能手动setOptions需要通过获取实例$curChart后。通过this.$curChart.setOption来设置echart配置

2021-06-18 10:35:01 1216 4

原创 前端全局控制console.log的输出

开发环境下,为了方便调试,会有一些控制台的输出,但如果忘了删除或注释,打包到生产环境中,就会不太友好,容易产生歧义,以下通过几种方式来实现根据环境变量全局控制console.log的输出方式一:全局定义1、全局定义定义函数//全局配置,生产环境取消console.log的控制台输出functionconsoleCancle(sign){console.log=(function(oriLogFunc){returnfunction(){i...

2021-05-17 16:25:46 2378

原创 前端下载后端返回的二进制文件流

download = (url, params) => { let filename; window.fetch(url, { method: 'POST', body: JSON.stringify(params), "Access-Control-Allow-Origin" : "*", "Access-Control-Allow-Credentials" : true, header: { 'Cont.

2020-12-29 18:23:18 682

原创 vsCode 运行插件VS Code Counter没有反应

在运行VS Code Counter插件统计代码行数的时候,发现没有反应,其实这个时候已经在统计了,但因为有个rg进程占用了大量的cpu,如下图所示关掉这个进程之后,结果就出来了,可以通过在 settings.json中配置"search.followSymlinks": false,之后运行插件时就正常返回了...

2020-11-04 17:14:49 4386 1

原创 数组扁平化的几种实现方式

1.二维数组时,可以简单使用flat()方法let arr = [[1,2],[3,4],[5,6]].flat();let arr = [[1,2],[3,4],[5,6]].flat();console.log(arr); // [1,2,3,4,5,6]如果是多维数组,则flat()将达不到效果,2.迭代实现const arr = [1,2,[3,4,5,[6,7],8],9,10,[11,[12,13]]];const flatten = (arr) => {.

2020-10-14 15:13:55 3830

原创 JavaScript的instanceof理解

JavaScript中变量的类型判断常常使用typeof运算符,但使用typeof时存在一个缺陷,就是判断引用类型存储值时,无论引用的是什么类型的对象,它都返回“object”。ECMAScript 引入了另一个 Java 运算符 instanceof 来解决这个问题。instanceof 运算符与 typeof 运算符相似,用于识别正在处理的对象的类型。与 typeof 方法不同的是,instanceof 方法要求开发者明确地确认对象为某特定类型。1.instanceof运算符用法var str

2020-07-22 10:42:35 1219

原创 JavaScript 声明之道

JavaScript中创建变量或函数称为声明变量或声明函数。一、声明变量声明变量可通过 var、let、const来定义。1、var声明语句声明一个变量,并可选地将其初始化为一个值 用var声明的变量的作用域是它当前的执行上下文 function x() { y = 1; // 在严格模式(strict mode)下会抛出 ReferenceError 异常 var z = 2;}x();console.log(y); // 打印 "1",不使用var变量...

2020-07-16 13:31:11 186

原创 TS2739 Type is missing the following properties from type Readonly history location match

工程中报如下错误:解决方案:引入 withRouter,将组件包裹目的就是让被修饰的组件可以从属性中获取history,location,match,路由组件可以直接获取这些属性,而非路由组件就必须通过withRouter修饰后才能获取这些属性了...

2019-12-02 16:37:20 9258

原创 一张图理解强缓存和协商缓存的流程

2019-10-29 18:28:54 653

原创 通过 document.execCommand 实现简单的文本编辑效果

利用document.execCommand实现简单的文本编辑功能,代码如下<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>contenteditable</title></head><body>&l...

2019-08-04 10:21:57 697

原创 给html标签添加 contenteditable 属性,可实现页面可编辑的效果

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>contenteditable</title></head><body><div contenteditable style="border:1px ...

2019-08-04 10:06:30 3765

原创 react 中的 setState 的异步执行

react 中的 setSate 方法是异步的,它的写法有两种形式:1、参数为一个对象this.setState({ love: '甜甜', foot: '火锅、串串'})2、参数为一个方法this.setState(()=>{ return { love: '甜甜', foot: '火锅、串串' }})...

2019-07-14 10:33:45 904

原创 Warning: Cannot update during an existing state transition (such as within `render`). Render methods

在使用react开发项目时,报了这个错误原因:在render的时候使用setState()方法改变了state,它应该是一个纯的函数,不应该在这个方法当中去改变state

2019-06-11 14:11:18 10730

原创 JavaScript 的继承

1、原型链继承原型链继承,将父类的实例作为子类的原型,他的特点是实例是子类的实例也是父类的实例,父类新增的原型方法/属性,子类都能够访问,并且原型链继承简单易于实现,缺点是来自原型对象的所有属性被所有实例共享,无法实现多继承,无法向父类构造函数传参。//js中通过原型来实现继承 function Person(name,age,sex) { this.name=na...

2019-05-30 21:56:14 130

原创 Ant Design Pro 框架的页签标题修改

如图所示,在使用Ant Design Pro框架的时候,页签的标题还是存在Ant Design Pro字段,需要自定义修改成自己需要的字段,如图:方法如下:找到src文件夹下的layouts文件夹下的BasicLayout.js文件,如下图内容,修改即可...

2019-05-23 15:45:37 11360 3

原创 冒泡、快排、选择、插入算法思想的理解

1、冒泡排序// 冒泡排序的核心就是两层for循环let temp=0;for(let i=0; i<arr.length; i++){ for(let j=i+1; j<arr.length; j++){ if(arr[i]>arr[j]){ temp=arr[i]; arr[i]=arr[j]...

2019-05-20 10:08:39 383

原创 正则表达式的元字符和限定符释义

一、元字符:. 表示的是:除了\n以外的任意的一个字符 如:"lzplt112204101314"[] 表示的是:表示范围[0-9] 表示的是0到9之间的任意的一个数字, "789" [0-9][1-7] 表示的是1到7之间的任意的一个数字[a-z] 表示的是:所有的小写的字母中的任意的一个[A-Z] 表示的是:所有的大写的字母中的任意的一个[a-zA-Z] 表示的是:所...

2019-05-19 10:35:52 1206

原创 一个例子看懂 apply 和 call 的作用

apply的使用语法函数名字.apply(对象,[参数1,参数2,...]); 方法名字.apply(对象,[参数1,参数2,...]);call的使用语法函数名字.call(对象,参数1,参数2,...); 方法名字.call(对象,参数1,参数2,...);作用作用:都可以改变this的指向 不同点:参数传递的方式是不一样的只要是想使用别的对象的方法,并...

2019-05-17 10:58:57 221

原创 构造函数、实例对象、原型三者之间的关系

构造函数可以实例化对象; 构造函数中有一个属性叫prototype,是构造函数的原型对象; 构造函数的原型对象(prototype)中有一个constructor构造器,这个构造器指向的就是自己所在的原型对象所在的构造函数; 实例对象的原型对象(__proto__)指向的是该构造函数的原型对象,拥有__proto__这个属性的肯定是实例对象; 构造函...

2019-05-11 20:39:18 326

原创 http常用的请求头

一下列表列出了我们常用到的所有http请求头,具体请参考表格信息 协议头 说明 Accept 可接受的响应内容类型(Content-Types)。 Accept-Charset 可接受的字符集 Accept-Encoding 可接受的响应内...

2019-05-08 21:19:47 838

原创 http返回的所有状态码汇总

100Continue继续。客户端应继续其请求101Switching Protocols切换协议。服务器根据客户端的请求切换协议。只能切换到更高级的协议,例如,切换到HTTP的新版本协议200OK请求成功。一般用于GET与POST请求201Created已创建。成功请求并创建了新的资源202Accepted...

2019-05-08 21:10:09 224

原创 调用函数的三种方式

可以使用call或者apply这两个方法调用函数,两者的区别在于传递的参数的格式:1、call需要将传递给函数的参数明确写出来,是多少参数就需要写多少参数;2、而apply则将传递给函数的参数放入一个数组中,传入参数数组即可。obj.func();func.call(obj,args);//参数列出func.apply(obj,[a,b,c,d,......]);//参...

2019-04-01 16:53:53 3576

原创 JavaScript时间戳的获取方法

Date.parse() 和getTime() 都可以获取到时间戳,都是用于分析一个包含日期的字符串,并返回该日期与 1970 年 1 月 1 日午夜之间相差的毫秒数,但两者的区别是,getTime 是从时间对象来拿取的,而parse()是根据日期格式直接获取的,1、Date.parse()var time = Date.parse("dd/MM/YYYY");var time =...

2019-03-30 09:49:20 158

原创 不改变原数组,删除一个数组的最后一数返回一个新数组

不要修改原数组,如果通过var newArr = arr;这样的写法实际只是让newArr 引用了arr,若进行修改,实际仍然修改了原数组。因此需要将原数组复制给一个新的数组,可以通过slice()实现,即:var newArr = arr.slice(0)。最后通过pop方法删除数组的最后一个元素。function lt(arr) {var newArr = arr.slice(...

2019-03-29 17:37:18 4871

原创 js中的几种操作添加Array数组元素的方法

1、push()push() 的方法就是可把一个参数顺序添加到 数组对象的的尾部,它直接修改 了数组对象,而不是创建一个新的数组,返回新的长度。push() 方法和 pop() 方法使用数组提供的先进后出栈的功能。2、unshift()unshift() 方法就是可把一个参数顺序添加到 数组对象的头部,并将已经存在的元素顺次地移到较高的下标处,以便留出空间。该方法可以添加多个参数,...

2019-03-27 17:25:35 6307

原创 react 工程实现按钮点击打开一个新的页签

import React, { PureComponent } from 'react';export default class lt extends PureComponent {state = { host: '',} lzp= () =&gt; { const w = window.open('about:blank'); const {...

2018-12-17 20:37:24 7052

原创 实现一个分数系统,提示用户输入班级的人数和分数,并求总分数,平均数,最大值

// 提示输入班级的人数,并将其转成数字类型(防止输入小数)// prompt() 弹出个输入框,让你输入东西var all = parseInt(prompt("请输入班级人数"));// 定义一个数组存储成绩var lut = [];// 循环录入每个人的成绩for (var i = 0; i &lt; all; i++) { lut[lut.length] = p...

2018-12-14 23:18:36 1578

原创 react 实现页面某个范围的展开、收起功能

效果图 import React, { PureComponent, Fragment } from 'react';import { Row, Col, Button, Card, Input, Radio, Select} from 'antd';const Search = Input.Search;const RadioGroup = Radio.Group;c...

2018-12-14 15:30:32 11378 3

原创 react 父子组件之间相互传值

1、定义父组件import React, { PureComponent } from 'react';export default class Father extends PureComponent { render(){ return( &lt;div&gt; &lt;p&gt;父组件&lt;/p&gt; ...

2018-12-14 15:07:33 681

原创 antd 表格的分页属性设置

1、引入Table 组件 &lt;Table bordered loading={ loading } pagination={ paginationProps } rowSelection={ rowSelection } onRowDoubleClick={this.dbClick } columns={ this.columns } ...

2018-12-13 23:17:24 42555 2

原创 ant design Pro 组件间通过路由(routerRedux)方式传值

1、引入  routerReduximport { routerRedux } from 'dva/router'2、在Table 组件中加入属性 &lt;Table bordered pagination={ paginationProps } //双击表格行触发 onRowDoubleClick={this.dbClick } column...

2018-12-13 23:07:08 6637 1

原创 ant design 的 Form 表单 自定义验证 不能输入中文和数字 ,只能输入大写的字母

 // validator 为自定义校验&lt;FormItem label="数据" key="tableData"&gt; {getFieldDecorator('tableData', { rules: [ { required: true }, { validator: checkData, trigger: 'blu...

2018-12-07 23:28:21 9409

原创 ant design 的树形控件异步数据加载方法

1、在state中定义点击加载时异步加载的数据源treeData state = { treeData: [], } 2、 在render 的return中Tree组件调用onLoadData方法render() { return ( &lt;Tree loadData={this.onLoadData}&gt; &lt...

2018-12-03 21:37:22 24428 13

原创 将一串数字转为一个数组的形式,如1234 => ["1234"]

let lzp = 5201314;let lt = [];let ttq = lzp.toString();console.log(lt.push(ttq)); // ["5201314"] 

2018-11-30 18:06:24 4010

原创 ant design 的table组件实现全选功能

需求:ant design 的table组件中,点击表头的选择框可以实现全选的效果,但有时根据业务需求,需要在表格外面添加一个选择框,点击实现全选的效果,如图所示。实现方法:1、添加一个checkbox2、 在table组件中添加  rowSelection 属性定义该属性 // 选择行 const { selectedRowKeys } = this.s...

2018-11-28 08:49:03 17709 3

原创 es6 解构赋值 的几个注意点

1、结构不成功,变量值等于undefinedlet [lzp] = [];let [lt, lzp] = [1];以上两种情况属于结构不成功, lzp 的值都是 undefined2、如果等号的右边不是数组,则会报错// 等号右边的都不是数组,所以都会报错let [lzp] = 1;let [lzp] = false;let [lzp] = NaN;let [lz...

2018-11-25 11:15:35 754

原创 暂时性死区 理解

let 和 const 声明的变量不存在变量提升,其作用域都是块级作用域,凡是在声明变量之前使用变量就会报错,所以,在代码块内,使用let命令声明变量之前,该变量都是不可用的。这在语法上,称为“暂时性死区”(temporal dead zone,简称 TDZ)。if (true) { // 死区开始 lzp = 'lut'; // ReferenceError console....

2018-11-22 09:12:26 3909 1

原创 react 子组件向父组件传值简单示例

父组件data即为要向子组件 ExpressionTree 组件传递的值,子组件node.props.title,就相当于this.props.title,onSelect api 的理解请参考 ant design 组件的 树选择组件...

2018-11-08 08:34:57 322

原创 react 中父组件向子组件传值简单例子

该例子选用的 组件为ant design子组件通过this.props.handleData()的方法向父组件传值父组件在父组件中定义相同的handleData()方法获取子组件传过来的值参数a即为子组件传给父组件的值。 ...

2018-11-08 08:21:39 3270 4

原创 ant design pro 修改 mode 的访问路径

2018-10-31 09:30:49 3109

空空如也

空空如也

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

TA关注的人

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