自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(296)

原创 webstorm常用快捷键

ctrl + shift + n: 打开工程中的文件,目的是打开当前工程下任意目录的文件。 ctrl + j: 输出模板 ctrl + b: 跳到变量申明处 ctrl + alt + T: 围绕包裹代码(包括zencoding的Wrap with Abbreviation) ctrl + []: 匹配 {}[] ctrl + F12: 可以显示当前文件的结构 ctrl + x:...

2018-04-17 15:23:26 149

原创 React简介

React简介如果你进入官方网站,只会看到一句简单的介绍:A JavaScript library for building user interfaces (用于构建用户界面的JavaScript库)虽然是很简单的一句话,显得朴实无华,但是却包含最伟大的道理,让人感觉的到它的强大React三大体系如下图:对于React的三大体系的学习也是有一个层次的,需要你先学会React.j...

2019-11-19 20:02:38 133

原创 js实现二维数组中查找目标数算法

题目在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。分析:数组中任意找一个数,它的左边都小于它,它的下边都大于它。如果要找的数(target)大于这个数,那就向下找;小于这个数就向左找。那么我们应该取哪个数与target做比较呢?首先我们先想到是数组...

2019-11-18 19:47:33 657

原创 签名打包发布Release版本的apk安装包

签名打包发布Release版本的apk安装包请参考以下两篇文章:ReactNative之Android打包APK方法(趟坑过程)React Native发布APP之签名打包APK如何发布一个apk先保证自己正确配置了所有的 RN 环境在 cmd 命令行中,运行这一句话keytool -genkey -v -keystore my-release-key2.keystore -...

2019-11-16 14:51:31 1430

原创 react调用摄像头拍照

React调用摄像头拍照场景在一些移动app的个人登陆页面往往有头像的地方,我们可以根据自己的喜好随意的更换我们的头像。那么在react-native的项目中如果轻松的实现这一功能,下面有一些简单的步骤。React调用摄像头拍照功能实现步骤在项目的终端中运行npm install react-native-image-picker@latest --save命令安装到项目运行依赖,此时调试...

2019-11-16 14:47:43 2097 1

原创 React轮播图使用

React轮播图使用使用react-native开发的移动端的项目往往有轮播图的存在,尤其是首页,如果正确使用轮播图,下面有一些简单的步骤。在项目的终端运行npm i react-native-swiper --save命令安装轮播图组件在要使用轮播图的页面中导入轮播图组件import Swiper from 'react-native-swiper';其中,在Swiper身上,show...

2019-11-16 14:35:40 264

原创 React-Native的路由使用

React使用场景在一些首页或者其他的页面中,往往存在一些链接(标题),就像是手机里的淘宝一样,每一种商品都存在商品详情,我们点击江宁区就会切换到另一个页面,这里的应用就是路由实现的,下面就React中的路由的使用做简单的说明React路由使用步骤安装路由:在项目的终端运行命令 npm i react-native-router-flux --save导入路由相关的组件(在需要使用路由链...

2019-11-16 14:24:31 143

转载 图的广度优先遍历和深度优先遍历

深度优先遍历和广度优先遍历

2019-11-14 15:42:08 168

转载 二叉排序树

二叉排序树

2019-11-14 15:01:18 70

原创 React组件生命周期

React组件的生命周期概念:在组件创建、到加载到页面上运行、以及组件被销毁的过程中,总是伴随着各种各样的事件,这些在组件特定时期,触发的事件,统称为 组件的生命周期;组件生命周期分为三部分: 组件创建阶段:组件创建阶段的生命周期函数,有一个显著的特点:创建阶段的生命周期函数,在组件的一辈子中,只执行一次;componentWillMount: 组件将要被挂载,此时还没有开始渲染虚拟...

2019-10-17 15:07:14 183

原创 React创建组件

React创建组件React创建组件有两种方式:构造函数和class关键字构造函数:第一种基本组件的创建方式(构造函数),就是一个最基本的组件,想要把组件放在页面中,可以把 构造函数的名称,当作 组件的名称,以HTML标签形式引入页面中即可注意:React在解析所有的标签的时候,是以标签的首字母来区分的,如果标签的首字母是小写的,那么就按照 普通的 HTML 标签来解析,如果首字母是...

2019-10-16 12:29:08 56

原创 JSX语法

JSX语法注意点如要要使用 JSX(符合XML规范的JS语法) 语法,必须先运行 cnpm i babel-preset-react -D,然后再 .babelrc 中添加 语法配置(在presets中加入一个"react");JSX语法的本质:JSX内部在运行的时候,也是先把 类似与HTML这样的标签代码转换为 React.createElement的形式来实现的,并没有直接把 用户写的 ...

2019-10-15 21:50:52 141

原创 React项目的创建

React项目的创建运行 cnpm i react react-dom -S 安装包在项目中导入两个相关的包:// 1. 在 React 学习中,需要安装 两个包 react react-dom// 1.1 react 这个包,是专门用来创建React组件、组件生命周期等这些东西的;// 1.2 react-dom 里面主要封装了和 DOM 操作相关的包,比如,要把 组件渲染到页面...

2019-10-15 21:44:55 89

原创 React中的核心概念

React中几个核心的概念虚拟DOM(Virtual Document Object Model)DOM的本质是什么:就是用JS表示的UI元素DOM和虚拟DOM的区别:DOM是由浏览器中的JS提供功能,所以我们只能人为的使用 浏览器提供的固定的API来操作DOM对象;虚拟DOM并不是由浏览器提供的,而是我们程序员手动模拟实现的,类似于浏览器中的DOM,但是有着本质的区别虚拟DOM:优...

2019-10-15 21:39:24 132

转载 前端常用的设计模式

前端常用的设计模式

2019-09-16 11:06:23 75

转载 js中null,undefined,false,0,'',[],{}判断方法

js中的特殊值判断

2019-09-15 09:47:05 748

原创 Generator和async

什么是Generator函数Generator函数与普通函数的区别是该函数可以分步骤阻塞,不像普通函数需要一路走到底,就像是Generator生成一堆的小函数,只有主动调用next()才会一个个的执行这些小函数。总结起来就是Generator函数中间可以停下来,可以使用yield来暂时的放弃执行。拿一个形象的例子:普通函数好比是坐高铁或者乘坐飞机,我们只有到达目的地了,才停止下来,中间是不允...

2019-09-05 16:32:59 183

转载 浏览器缓存

浏览器缓存详解

2019-09-04 14:23:14 39

转载 CSS网格布局

网格布局详解

2019-08-26 22:03:09 64

原创 数组常用方法详解

数组是一个最常见的数据结构,也是用来存储数目比较大的有效的工具,这里详细的介绍数组的一些基本的方法栈和队列JavaScript 中的数组既可以表示栈也可以表示队列,当使用 pop方法时会视为栈,将栈顶也就是数组最后一个元素弹出,当使用 shift方法时会视为队列,将队首也就是数组第一个元素出列。不管是pop方法还是shift方法,都会返回弹出(删除的元素)而添加数组元素的方法push,un...

2019-08-26 12:00:14 60

原创 BFC、IFC、GFC 和 FFC

BFC(Block formatting contexts):块级格式上下文页面上的一个隔离的渲染区域,那么他是如何产生的呢?可以触发BFC的元素有float、position、overflow、display:table-cell/ inline-block/table-caption ;BFC有什么作用呢?比如说实现多栏布局’IFC(Inline formatting contexts)...

2019-08-24 15:33:46 86

原创 数组,字符串算法题

两个数组合并成一个数组:请把两个数组 [‘A1’, ‘A2’, ‘B1’, ‘B2’, ‘C1’, ‘C2’, ‘D1’, ‘D2’] 和 [‘A’, ‘B’, ‘C’, ‘D’],合并为 [‘A1’, ‘A2’, ‘A’, ‘B1’, ‘B2’, ‘B’, ‘C1’, ‘C2’, ‘C’, ‘D1’, ‘D2’, ‘D’]。let a1 = ['A1', 'A2', 'B1', 'B2'...

2019-08-24 14:44:48 118

原创 时间选择器使用

时间选择器这里的时间选择器是较复杂的时间选择器,融合了日,周,月,季度,年以及自定义的,具体的展示如下图时间选择器处理由于我们需要选择自己想要选择的时间,并将其获取到,然后做一些处理,所以我们需要监听时间的改变,这时需要在watch中对时间的监听。时间选择器组价的使用<h-time-selector v-model="time" ...

2019-08-24 10:24:45 70

原创 消息推送协议

消息推送协议消息推送协议是一个解决CS/BS/APP端实时消息推送问题的应用层文本协议,使用json数据结构描述,它工作在websocket上,也可以工作在websockets上,由业务场景决定了消息推送协议由内网消息推送,外网消息推送这两大部分构成。此协议描述了以下几部分内容:消息推送服务的开启;消息推送服务的认证;推送方式的选择;内网消息推送过程;外网消息推送过程;消息推送服务的关闭;APP...

2019-08-24 09:55:12 560

原创 ES5(js)/ES6 的继承的区别

##ES5(js)/ES6 继承的区别ES5(js)与ES6继承之间的区别,除了写法不一样之外,还有其他的区别,如下描述class 声明会提升,但不会初始化赋值。Foo 进入暂时性死区,类似于let、const声明变量const bar = new Bar(); // it's okfunction Bar() { this.bar = 42;}const foo = new...

2019-08-23 19:28:05 153 1

原创 js深度优先遍历和广度优先遍历实现

深度优先遍历深度优先遍历DFS 与树的先序遍历比较类似。假设初始状态是图中所有顶点均未被访问,则从某个顶点v出发,首先访问该顶点然后依次从它的各个未被访问的邻接点出发深度优先搜索遍历图,直至图中所有和v有路径相通的顶点都被访问到。若此时尚有其他顶点未被访问到,则另选一个未被访问的顶点作起始点,重复上述过程,直至图中所有顶点都被访问到为止。/*深度优先遍历三种方式*/let deepTrav...

2019-08-23 18:25:52 1615

原创 日期兼容

问题描述当我们需要将一串日期字符串转换为具体的Date格式(编辑回显或其他场景)的时候往往需要用到new Date("xxxx")方法。 在IE11浏览器下,会遇到这种问题:报错原因:不同浏览器对不同日期格式存在差异解决方法:IE11里面不能直接转换-,必须先替换成/...

2019-08-23 13:53:54 140

原创 重点复习

复习缺口

2019-08-21 11:07:57 66

原创 Echarts--柱状图封装使用

Echarts介绍Echarts是一个使用 JavaScript 实现的开源可视化库,可以很方便的以多彩的形式展示数据,使人一目了然。关于具体的使用,如有兴趣的可以参见官网说明 Echarts详细说明文档Echarts–柱状图封装使用这里我仅介绍Echarts中的柱状图的使用,包括渐变柱状图,堆叠柱状图的使用。其实不管是渐变柱状图还是堆叠柱状图都是柱状图,只是在图的数据optio...

2019-08-17 15:14:21 294

原创 vue拦截器

拦截器的目的当我们需要统一处理http请求和响应(Vue项目中,通常是axios请求),这时设置拦截器,对请求和响应做封装处理拦截器设置如下代码:import axios from 'axios'import { Message } from 'hui'import { trimOnlySpace } from '@hui-pro/utils'import { REQUEST_SUC...

2019-08-15 09:28:44 269

原创 前端运行项目清缓存等小技巧

命令行清除缓存:当在命令行输入几个不同的命令时,控制台或者命令行出现同一个问题的时候,需要清除缓存,使用以下的命令npm cache clean force npm cache verify查看源:npm config get registry设置源:npm config set registry 源的地址,如 设置成淘宝源 npm config set registry https://r...

2019-08-14 19:05:35 325

原创 新员工从公司的git上下载代码步骤:

从公司的git上下载代码步骤:自己的电脑得安装好git(Git-bit,一路next即可)和小乌龟(一路next);检测安装是否成功,在桌面右击,出现Git Bash Here和Git GUI Here,说明安装成功创建文件夹,位置随自己定,然后右击文件夹,选择Git Bash,然后设置自己的仓库的名字和邮件(姓名与Email只用于日志标识。实际推送到GitHub等在线仓库时,要用有操作权限...

2019-08-14 18:39:36 3126

原创 WebStorm环境忽略ESLint检测

使用webstorm编辑器,想要其忽略eslint的检测,直接在.eslintignore文件中加入src即可,如下图:

2019-08-14 18:32:44 457

原创 引入不同模块化规范的外部组件包时报错

现象说明在日常开发中,我们会经常遇到引用其他现有的组件库的情况,以现有项目为例,我们会常常引入hui-pro,hui-pro组件库是不同的人编写,会有不同打包输出方式,有些包是遵循commonjs规范,有些包是遵循es6规范,在海豚脚手架升级之前,引入不同规范的组件包,项目就会出现报错。本文将提供解决方式,并重点解析其原因例:老的海豚脚手架在引入hui-pro empty组件时,报错如下:...

2019-08-14 17:15:14 1277

转载 用pre标签解决换行、自动高度 (实用)

pre标签的妙用

2019-07-26 14:51:55 544

转载 红黑树详解

红黑树详解

2019-07-26 11:54:24 50

转载 Vue核心之虚拟DOM

虚拟DOM源码分析

2019-07-24 17:02:55 61

转载 Vuex使用详解

Vuex概念Vuex 是一个专为 Vue.js 应用程序开发的** 状态管理模式** 。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化状态管理模式首先,我们先看一下下面这个例子new Vue({ // state data () { return { count: 0 } }, // view te...

2019-07-24 16:25:16 52

转载 64 匹马,8 个赛道,找出前 4 名最少比多少场?

64 匹马,8 个赛道,找出前 4 名最少比多少场?

2019-07-24 09:30:59 362

原创 JS原理题

-实现一个call函数// 思路:将要改变this指向的方法挂到目标this上执行并返回Function.prototype.mycall = function (context) { if (typeof this !== 'function') { throw new TypeError('not funciton') } context = context || wi...

2019-07-19 11:28:41 142

空空如也

空空如也

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