自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 git克隆报错fatal: unable to access: OpenSSL SSL_read: Connection was aborted, errno 10053

取消http代理git config --global --unset http.proxy取消https代理git config --global --unset https.proxy执行以上两条命令之后再下载就可以啦

2021-11-25 19:44:38 1049

原创 ant design of vue表格伸缩列

1.安装依赖yarn add vue-draggable-resizable@2.1.0 -D2.新建JS文件 (tableDragResize.js)import Vue from "vue";import VueDraggableResizable from "vue-draggable-resizable";Vue.component("vue-draggable-resizable", VueDraggableResizable);function initDrag(columns)

2021-08-19 16:49:36 476

原创 JS异步和单线程

图片来自Philip Roberts的演讲《Help, I’m stuck in an event-loop》上文中说到的浏览器为异步任务单独开辟的线程可以统一理解为WebAPIs,上文中说到的任务队列就是callback queue我们所说的主线程就是有虚线组成的那一部分,堆(heap)和栈(stack)共同组成了js主线程,函数的执行就是通过进栈和出栈实现的,比如图中有一个foo()函数,主线程把它推入栈中,在执行函数体时,发现还需要执行上面的那几个函数,所以又把这几个函数推入栈中,等到函数执行完

2021-08-17 15:54:15 169

原创 JS闭包浅谈

闭包作用域应用的特殊场景有两种表现函数作为参数被传递函数作为返回值被返回//函数作为返回值function create() { const a = 100 return function () { console.log(a) }}const fn = create()const a = 200fn() // 100// 函数作为参数被传递function print(fn) { const a = 200 fn()}c

2021-08-16 17:17:12 107

原创 JS变量提升

1.变量提升ES6之前我们一般使用var来声明变量,提升简单来说就是把我们所写的类似于var a = 123;这样的代码,声明提升到它所在作用域的顶端去执行,到我们代码所在的位置来赋值。function test () { console.log(a); //undefined var a = 123; };test();//undefineda = 1;var a;console.log(a); //12.函数提升具名函数的声明有两种方式: 1. 函数声明

2021-08-16 16:22:28 103

原创 JS的this指向问题

1.全局作用域=>this -> window2.普通函数中=>this取决于谁调用,谁调用我,this就指向谁,跟如何定义无关function fun(){ console.log(this.s);}​var obj = { s:'1', f:fun}​var s = '2';​obj.f(); //1fun(); //23.事件绑定中的this事件源.onclik = function(){ } //this -> 事件源

2021-08-16 11:03:28 99

原创 前端面试原型规则

原型规则obj.__proto__是隐式原型prototype是函数的显式原型var obj = {}; obj.a = 100; var arr = []; arr.a = 100; function fn() {} fn.a = 100; console.log("obj.__proto__", obj.__proto__); console.log("arr.__proto__", arr.__proto__);

2021-08-11 21:50:11 95

原创 Web前端Vue判断是否是首次进入页面

方法一mounted钩子函数中写如果window.name值为空就证明为首次加载,反之则不是 if (window.name === '') { console.log('页面首次被加载') } else { // 这里可以写调用什么方法 console.log('页面被刷新') } }方法二created钩子函数中写判断方式1如果页面刷新的话window.performance.navigation.type的值为1,如果值不是1就

2021-08-10 19:49:53 5268

原创 JS变量类型和计算一

变量类型值类型引用类型(对象,数组,函数三种)typeof运算符“object”, “number”, “string”, “boolean”, “function”, “undefined”, “symbol”, 共7种// Numberstypeof 37 === 'number';typeof 3.14 === 'number';typeof Math.LN2 === 'number';typeof Infinity === 'number';typeof Na

2021-08-04 23:33:50 97

原创 maven安装与配置

1.安装maven1、准备好maven安装文件2、右击解压缩,注意解压缩过程就是安装过程,注意自己解压后文件的目录解压好就是安装完成了,下面进行maven的配置。二、maven的环境变量配置1、打开高级系统设置界面右击桌面的“此电脑”图标,点击“属性”,弹出系统窗口,然后点击“高级系统设置”2、打开环境变量配置界面3、配置环境变量a. 新建MAVEN_HOME变量,里面可以只存放maven相关的路径配置,方便日后管理。b.  将MAVEN_HOME配置到系统环境变量path中

2021-07-30 21:17:45 353

原创 JDK1.8安装和环境配置教程

二、JDK安装过程1.下载好了安装包后,双击进入安装向导。4.根据各自习惯选择安装路径,建议最内层的文件夹名是JDK的版本号,图中是本人的安装路径,大家可以参照我的命名方式去选择安装路径。选完之后,然后按确定。5.点击下一步。6.正在安装。7.安装 jre,可以更改 jre 安装路径(过程同上述安装目录的选择)。(注意:如果提示需要将 jre 安装在一个空目录下,那自己创建一个目录即可)和JDK安装目录一样,本人在Java文件夹下新建一个“jre1.8.0_152”的空文件夹,

2021-07-30 20:29:06 239

原创 vue-cli创建vue项目

安装Vue和Vue-cli1.是否安装了vue以及vue-clivue -V如果出现’vue’ 不是内部或外部命令,也不是可运行的程序或批处理文件,则没有安装。2.安装vue以及vue-clinpm install -g vuenpm install -g @vue/cli 3.检查安装版本vue-cli创建vue项目1.vue create ‘项目名’ 回车创建项目,项目名不能有大写2.创建项目后的配置3.手动选择配置手动配置:需要什么自己选择(上下箭头切换 空格选中 )

2021-07-24 16:21:24 245

原创 几种获得宽高的方式

<div id="getdocumentStyle" style="height: 100px;"></div>#getdocumentStyle { width:200px}1.dom.style.width/heightdom.style.width/height 这种方式只能取到 dom 元素内联样式所设置的宽高,也就是说如果该节点的样式是在 style 标签中或外联的 CSS 文件中设置的话,通过这种方法是获取不到 dom 的宽高的。2.window.ge

2021-07-22 15:42:07 1209

原创 浏览器本地存储

浏览器本地存储的三种方式localStorage、sessionStorage和cookie1.localStorage生命周期永久,除非用户清除浏览器中的localStorage信息,否则永远存在;存放数据大小一般为5MB;仅在浏览器中保存,不参与服务器通信;2.sessionStorage仅在当前会话下有效,关闭页面或者浏览器后被清除;存放数据大小一般为5MB;仅在浏览器中保存,不参与服务器通信;可以接受源生接口,亦可以再次封装来对Object和Array有更好的支持;3.Cook

2021-07-20 20:53:37 486

原创 浏览器缓存

浏览器缓存机制浏览器缓存主要有两种机制:过期机制和验证机制浏览器缓存的实现方式主要有两种:HTTP和ServiceWorker缓存机制浏览器缓存规则定义在HTTP协议头部和HTML页面的meta标签中,从新鲜度和校验值两个维度确定浏览器是否可以直接使用缓存中的副本,还是需要去源服务器获取新版本。过期机制过期机制:缓存中副本的有效期缓存中副本的有效期满足条件(二者满足其一即可):1.含有完整的过期时间控制头信息,并且在有效期内。2.浏览器已使用过这个缓存的副本,并且会在一个会话中已经检查过新

2021-07-20 11:51:00 357

原创 canvas绘图

1.HTML5 标签用于绘制图像(通过脚本,通常是 JavaScript)。2. 元素本身并没有绘制能力(它仅仅是图形的容器) - 您必须使用脚本来完成实际的绘图任务。3.getContext() 方法可返回一个对象,该对象提供了用于在画布上绘图的方法和属性。var c=document.getElementById("myCanvas");var ctx=c.getContext("2d");ctx.fillStyle="#FFF000";ctx.fillRect(0,0,100,75);

2021-07-18 11:39:47 97

原创 HTML语义化

HTML语义化什么是语义化语义化,就是你写的HTML结构,是用相对应的有一定语义的英文字母(标签)表示的,标记的,因为HTML本身就是标记语言页面结构是否语义化看HTML结构,在去掉CSS样式表之后,依然能很好的呈现内容的结构,代码结构,则是语义化之后的文档效果为什么要语义化为了在没有CSS的情况下,页面也能呈现出很好地内容结构、代码结构用户体验有利于SEO:和搜索引擎建立良好沟通,有助于爬虫抓取更多的有效信息:爬虫依赖于标签来确定上下文和各个关键字的权重;方便其他设备解析(如屏幕阅读

2021-07-18 11:03:15 92

原创 openCV图像的傅里叶变换

openCV图像的傅里叶变换学习函数1.cv2.dft()、cv2.idft()等2.使用OpenCV对图像进行傅里叶变换3.傅里叶变换的一些用处使用numpy进行傅里叶变换import cv2 as cvimport numpy as npfrom matplotlib import pyplot as pltimg = cv.imread("D:/Python program/images/yangzi.jpg",0)f = np.fft.fft2(img)fshift = np.

2021-07-07 18:12:31 316

原创 配置Anaconda作为Pycharm的编译环境

pycharm中配置anaconda1、方式一添加conda environment

2021-06-18 16:18:21 139

原创 浏览器内核

浏览器浏览器内核包括渲染引擎和JS引擎浏览器内核就是支撑浏览器运行的最核心的程序不同的浏览器使用的内核可能不同Chrome,Safari:webkitfirefox:GeckoIE:Trident360,搜狗等国内浏览器:webkit+TridentJS内核组成模块运行在主线程js引擎模块:负责JS程序的编译与运行html,css文档解析文档:负责页面文本的解析DOM/CSS模块:负责DOM/CSS在内存中的相关处理布局和渲染模块:负责页面的布局和效果的绘制运行在分线程定时器模

2021-05-19 09:37:09 67

原创 打印功能

打印功能将需打印内容渲染成打印表格样式,利用html2canvas将表格 HTML 转换成图片,然后通过 jspdf 将图片制作成PDF安装依赖yarn add html2canvas jspdf实际代码<template>对应打印表格的数据<a-modal title="预览" v-model="printShow" width="70%" @ok="printOk"> <div id="caigouPrint" style="width: 94%; ma

2021-04-14 22:19:39 83

原创 vue问题总结

1、修改表格中的字段内容,这样插槽才能使用scopedSlots: { customRender: "affiliation" },2、删除数组中指定的元素this.array.splice(i,1);3、根据表格中的key删除一行这里的DataSource的位置是key-1,否则会失效this.dataSource.splice(key - 1, 1);4、日期输入框date点击重置只有是null的时候才会改变this.searchdata.date = null; //时间段置空

2021-04-14 22:12:09 178 2

原创 vue的Table行数据不发生变化解决方案

1、在table列表中添加key值的绑定2、每一次该行值发生改变时自动刷新key值3、这样就可以自动刷新列表啦

2021-03-18 17:03:20 902

原创 Anaconda 清华源配置

1、打开开始菜单栏的Anaconda Prompt (Anaconda),添加如下两行代码conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --set show_channel_urls yes2、打开如下位置C:\Users\用户名下的.condarc文件(1)内容如下channels: - https://mirrors.tuna.tsing

2021-03-09 10:11:33 963

空空如也

空空如也

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

TA关注的人

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