自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Mac系统下配置JDK

本文主要讲述Mac下的JDK环境配置;下载jdk安装包下载地址https://www.oracle.com/java/technologies/javase-jdk15-downloads.html下载对应的安装包,会下载下来一个dmg后缀文件这就是下载下来文件,点击之后进行安装,安装之后单机该文件,傻瓜式的安装就好了下面是比较重要的地方,安装之后,还需要能在终端使用jdk环境,所以还需要在mac上配置路径我们要找到这个jdk文件的路径,进入到根目录这就是咱的文件路径然

2021-02-07 15:03:47 315

原创 electron-builder打包Electron桌面应用程序

electron-builder是一个完整的electron项目打包分发的解决方案,并且可以兼容Mac windows和Linux不同的系统,相比electron-packer功能更加完善,打包出来的安装包也更加轻量级首先会有一个完备的electron项目,你都要打包了总有完整的项目吧其次下载安装electron-builder依赖,可以全局安装也可以只在项目中安装依赖npm install -g electron-builder (这是全局安装)如果是在项目中安装electron-build

2021-02-06 15:47:04 660

原创 Electron主进程与渲染进程的通信

Electron有两个进程,主进程和渲染器进程1.主进程通过创建BrowserWindow实例来渲染网页,当一个BrowserWindow实例被销毁之后,其实例渲染的网页也随之会被销毁,主进程会管理所有网页以及对应的渲染进程2.渲染器进程只会管理相应的网页,一个渲染器进程的奔溃,并不会影响到其他渲染进程以上是对两个进程的简单介绍,在实际的开发当中,难免会遇到两个进程之间相互通信的情况,下面介绍相互通信的方法;ipcRenderer通过ipcRender,你可以从渲染进程向主进程发送同步或异步消息

2021-02-06 15:14:03 297

原创 Electron中嵌套网页

有时候需要在桌面应用程序中嵌套网页,甚至是整个桌面应用程序的主要页面全是嵌套进去的网页,在Electron中,官方文档就给了我们几种不同的方案解决此问题Iframe这是H5的一个新标签,可以在网页中,内联一个全新的网页,而在electron中,他也是管用的,使用方式与在普通网页中相差无几webView把webView当做是一个容器一般,将外来网页放在容器中显示,但是要是使用,需要在主进程当中,创建窗口时,使用webViewTag设置为true const mainWindow = new B

2021-02-06 11:52:36 5423

原创 Electron创建桌面应用程序

Electron是一个可以使用JavaScript,Html和CSS创建桌面应用程序的框架,重要的是此框架,可以跨平台,无论是Mac还是Windows,甚至是linux都可以使用此框架在使用Electron框架之前,应该安装Node环境检查您的电脑上是否有node环境node -v如果出现版本号,说明电脑上有了node环境然后在你想要的地方,创建一个文件夹,可以取名为electron-app(也可以随便你喜欢的名字)进入文件夹之后,初始化文件夹为一个项目,使用命令npm

2021-02-06 10:54:34 196

原创 React报错

React报错Uncaught Invariant Violation: Rendered more hooks than during the previous render.这是由于hook两次渲染的次数不一样不可以将hooks放在条件渲染当中,非常有可能会导致两次条件不一致而导致hooks渲染次数不相同关于后续的报错信息,就可以看出是哪一个hooks出现了问题将保证该hooks每次都会渲染或者被定义就可以完美解决该问题...

2020-12-25 15:14:16 2824

原创 esLint报错

1.Assignment to property of function parameter ‘item’原因:循环时,不能修改对象属性解决:重新深拷贝一个对象,修改拷贝之后的对象

2020-12-08 19:02:18 2574

原创 Babel插件 将es6语法转换为es5

为什么需要Babel插件这是对ES5之后的版本升级,再ES5之后统称为ES6,新加入了许多语法,使得在浏览器上的兼容性变得差强人意,但可以很好的运行在node.js上,但是又不能进行dom和ajax操作,所以在使用es6语法的时候需要先将es6语法转换为es5语法,然后再运行再浏览器上,使之兼容性变得良好.下载babel插件,转换es6代码首先需要node.js环境在dos窗口可以通过查看node版本如果没有可以在官网下载安装在该目录下新建一个文件夹在该文件夹中 >npm

2020-09-23 20:08:27 733

原创 ‘==‘与‘===‘的区别

使用’=='符号时 左右两边数据类型相同时,直接比较值即可,如果数据类型不同,会自动将数据类型转换为相同的数据类型,再进行比较,如果相同返回true如果不同返回false使用’==='符号时,左右两边数据类型相同时,才会比较值是否相同,如果相同返回true,不同返回false.但是当左右两边数据类型不同时会直接返回false例如100==‘100’ 返回 true100===‘100’ 返回false区别就是再数据类型不同的时候...

2020-09-23 19:36:24 775

原创 &&和的区别 |和||的区别

'&&‘和’||'是逻辑运算符 '&‘和’|'是位运算符最大的区别是运算方法不太一样位运算符针对二进制形式 个位与个位比较,十位与十位比较,以此类推,位数不足再前面补零'&'是全为1才得1 '|'是只要有一个为1就为11010010&1010101得1010000'&&‘和’||'是逻辑运算符 结果会是boolean类型例如 a&&b当a是为false时 无论b是true或者false 该表达式结果都是f

2020-09-23 19:29:13 2454

原创 JavaScript Generator的异步操作的同步封装

首先介绍Generator函数Generator 函数是 ES6 提供的一种异步编程解决方案,语法行为与传统函数完全不同,Generator函数有多种理解角度。语法上,首先可以把它理解成,Generator 函数是一个状态机,封装了多个内部状态。执行 Generator函数会返回一个遍历器对象,可以依次遍历 Generator 函数内部的每一个状态。我们需要知道的是通过Generator函数可以返回一个遍历器对象,就可以使用next()方法。在例子中进行详细的介绍 //异步操作的同步封装

2020-09-08 00:01:54 260

原创 JavaScript Promise介绍

Promise 是异步编程的一种解决方案,比传统的解决方案(回调函数和事件)更合理和更强大。它由社区最早提出和实现,ES6将其写进了语言标准,统一了用法,原生提供了Promise对象。所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise是一个对象,从它可以获取异步操作的消息。Promise 提供统一的API,各种异步操作都可以用同样的方法进行处理。有了Promise对象,就可以将异步操作以同步操作的流程表达出来,避免了层层嵌.

2020-09-07 23:50:20 121

原创 javascript ajax基础

什么是ajaxAjax即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。Ajax=异步JavaScript和XML(标准通用标记语言的子集)。通过在后台与服务器进行少量数据交换,Ajax可以使用网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新(无刷新技术)。传统的网页(不使用Ajax)如果需要更新内容,必须重载整个网页页面。AJAX引擎会在不刷新浏览器地址栏的情况下,发

2020-08-25 23:56:05 554 1

原创 javascript原型以及原型链

什么是原型函数有原型,原型存放一些公共属性和方法,函数的本质也是一个对象,在函数对象内部有一个prototype指针指向原型,并且构造函数创建的实例对象中__proto__也指向这个原型对象, 原型对象中有constructor指向函数本身;为什么要有原型首先看一段代码// 一个构造函数var foo =function(name,age) { this.name=name; this.age=age; sayName:function(){ console.log(this.na

2020-08-25 23:18:47 94

原创 js 实现两数相加的算法

关于算法 两数相加 (leetcod上的的一道算法题)给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807首先我们要了

2020-08-17 23:26:01 5296 2

原创 javaScript 重写unshift()方法

Array.prototype.unshift()是数组原型中的非静态方法,用于在数组开头插入一个或多个元素,并且返回数组长度,参数是要插入的值.并且原值是要改变的在了解本来的功能之后就可以开始重写了//将重写的方法添加到原型当中 Array.prototype.myUnshift = function() { //这里我们从后往前遍历,因为是在数组前面添加元素,这样就不会丢失数据,长度是原来数组的长度加上要添加的元素个数 for (var i = t

2020-08-16 17:35:46 445

原创 javaScript中this的使用

解析器在调用函数每次都会向函数内部传递一个隐含的参数,开发者并看不到,这个隐含的参数就是thisthis本质就是一个参数,只不过是浏览器传入的,this指向一个对象,称为函数的上下文对象,this 就像一把利剑,不同的使用方式,会指向不同的对象;函数调用的方式不同会this会指向不同的对象;以函数的方式调用时,this指向windows// 这里定义一个函数 function foo(){ console.log(this); } foo(); //这里调用foo()函数

2020-08-15 22:29:17 181

原创 javaScript函数回调 一知半解

回调函数的官方英文解释是:A callback is a function that is passed as an argument to another function and is executed after its parent function has completed。翻译过来就是将函数作为一个参数传递给另一个函数,在父函数执行完成之后在执行这个函数,大概就是这个意思。在js中函数或者说是方法是可以作为参数传递的,被传递的函数称为回调函数,而接受参数的函数为主函数,也就是说,在主函数

2020-08-13 15:15:32 165

原创 js中浅拷贝与深拷贝的区别

浅拷贝与深拷贝在这里只针对引用数据类型;通俗来讲:浅拷贝 只复制对象的引用,也就是一个地址深拷贝 会复制对象的本身,会另开辟一个空间存放复制后的新对象在js中引用数据类型的指针存放在栈中,而对象本身存放在堆中,指针只是指向对象本身的一个地址。如上图 深拷贝会在堆区新开辟一个空间存放对象 在对拷贝后的对象进行更改时不会改变原来的对象。浅拷贝则相反。...

2020-08-11 15:24:51 277

原创 linux常用命令(够用)

基础命令clear 清理屏幕cd 进入文件夹cd+/ 进入根目录cd+空格 回到家目录cd+/+绝对路径cd+/+相对路径cd+ …返回上一层ls 查看文件ls ./查看指定文件夹一下的内容ls /ls -a查看所有文件包括隐藏文件ls -A查看所有文件不包括. …ls -l查看文件的详细信息,长查看mkdir+文件夹名 在当前的路径下新建一个文件夹touch+文件名 创建文件rmdir 删除文件夹 不可以删除空文件夹以及文件rm -r 删除

2020-08-09 21:11:56 147

原创 liunx目录结构 一知半解

linux与windows不同,没有盘符的概念,这就使linux的目录结构显得尤为重要linux是树状目录结构;由根目录一层一层向下推演,根目录尤为重要;/bin是Binary的缩写 存放最经常使用的命令/boot存放一些启动Linux时的一些核心文件,连接文件以及镜像文件/dev存放Linux的外部设备,在linux中访问外部设备和访问文件是相同的/etc存放所有系统管理所需要的配置文件和子目录/home用户的家目录 在linux中每个普通用户都有自己的一个目录,命名时普通用户的

2020-08-08 22:38:44 138

原创 有关元素的水平或者垂直居中问题

行内元素的水平垂直居中问题一下就以div 与 span为例进行实现为父元素添加text-align:center;属性以及属性值并为子元素设置line-height:与父元素同高;就可实现水平垂直居中text-align:center;实现子元素的水平居中子元素的line-height:与父元素同高 可以实现在父元素中垂直居中两者的叠加使用就实现水平垂直居中// 块级元素嵌套行内元素 <div> <span>君不见黄河之水天上来</spa

2020-08-06 10:19:29 110

原创 css中块级元素的水平垂直居中问题

为父元素添加绝对定位 position: absolute;为子元素添加绝对定位 position: absolute;子元素设置left right top bottom都置为0px子元素设置margin:auto;这里注意一定要加margin:auto; 这样才可以实现垂直水平居中// 两个简单的父子级块级元素示例 <div class="outer"> <div class="inner"></div> </div>//..

2020-08-04 22:32:14 326

空空如也

空空如也

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

TA关注的人

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