自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 资源 (1)
  • 收藏
  • 关注

原创 ES6 --- Promise基础用法(all、race)详解二

接上一篇,我们说完了reject、resolve、then、catch,下面我来说下Promise的其他两个方法all、race。Promise.all()简单来说,all的作用就是并行执行多个异步操作,然后在最后一个异步程序结束后,再继续下面的方法。Promise // 用Promise.all来执行,all接收一个数组参数,里面的值最终都算返回Promise对象。 .all([r...

2018-12-20 16:01:22 878

原创 ES6 --- Promise基础用法(resolve、reject、then、catch)详解一

ES6 — Promise基础用法详解Promise 是一个构造函数,它自身拥有all、reject、resolve这几个眼熟的方法,原型上有then、catch等同样熟悉的方法。所以,在开始一个Promise的时候,先new一个吧:let p = new Promise((resolve, reject)=> { setTimeout(()=> { ...

2018-12-19 10:47:51 10616 3

原创 Git的使用和提交规范

Git的基础使用1. git初始化下载git:地址是 git安装完成后,在github或者gitlab上复制http的clone链接,打开Git Bash\ git clone http://xxxx.git这样会在本地创建一个以项目名命名的文件夹,clone结束后就可以看到我们拉下来的项目了。做完 这些以后,还有很重要的一步,就是给你的git添加用户名和邮箱...

2018-08-08 11:21:29 642

原创 Git的使用和提交规范

Git的基础使用1. git初始化下载git:地址是 git安装完成后,在github或者gitlab上复制http的clone链接,打开Git Bash\ git clone http://xxxx.git这样会在本地创建一个以项目名命名的文件夹,clone结束后就可以看到我们拉下来的项目了。做完 这些以后,还有很重要的一步,就是给你的git添加用户名和邮箱...

2018-07-31 16:27:44 516

原创 Angular学习笔记(五)--- 自定义表单控件

本文简单介绍封装使用ngModel实现自定义表单控件的过程。NgModel 相关NgModelNgModel用于从作用域创建一个FormControl实例,并将它绑定到一个表单控件元素。[ngModel]: 单向绑定,作用域变更将同步到UI中[(ngModel)]: 双向绑定,UI模板的变更页将同步到作用域中ngModel继承自NgControlNgCon...

2018-07-31 16:09:57 1285

原创 Angular学习笔记(四) --- Angular Renderer (渲染器)

Angular Renderer (渲染器)什么是渲染器渲染器是 Angular 为我们提供的一种内置服务,用于执行 UI 渲染操作。在浏览器中,渲染是将模型映射到视图的过程。模型的值可以是 JavaScript 中的原始数据类型、对象、数组或其它的数据对象。然而视图可以是页面中的段落、表单、按钮等其他元素,这些页面元素内部使用 DOM (Document Object Model...

2018-05-25 14:03:12 3596

原创 Git pull request

git pull request当我们要给一个项目添加代码,但是它的主分支master不允许修改时,或者非此项目中的开发人员,想贡献代码。这个时候,最好的方式就是pr–pull request什么是pull request可能每个人对这个词都有不一样的理解。表面上看,像是一个pull请求,但是实际中,是我们请求别人pull。这样理解可能不是很正确。我们来一个通俗易懂的方式来解释下。...

2018-05-24 09:40:55 4221 1

原创 Angular学习笔记(三) --- 父子组件通信 @Input 与 @OutInput 详解 ( 下 )

子组件向父组件发送事件首先我们创建一个simple-app项目,在项目中,再创建一个子组件ChildComponent。修改子组件的文件child.component.html<div class="childBox"> <p>子组件</p> <div> &am

2018-05-16 16:39:29 550

原创 Angular学习笔记(三) --- 父子组件通信 @Input 与 @OutInput 详解 ( 上 )

父组件向子组件传递数据首先我们创建一个simple-app项目,在项目中,再创建一个子组件ChildComponent。修改子组件的文件child.component.html<div class="childBox"> <p>子组件</p> <div>父组件的名称:{

2018-05-16 16:23:20 1165

原创 Angular学习笔记(二) --- 生命周期钩子

生命周期函数简介 当前版本:6.0.0-build简介 指令和组件的实例有一个生命周期:新建、更新和销毁。 通过实现一个或多个 Angular core 库里定义的生命周期钩子接口,开发者可以介入该生命周期中的这些关键时刻。分类指令与组件共有的钩子ngOnChangesngOnInitngDoCheckngOnDestroy组件特有的钩子ngA...

2018-05-16 11:09:26 1463

原创 Angular学习笔记(一) --- 之安装教程

学习angular的时候,第一次面对这样的前端逻辑思维,不知道你的感受是怎么样的,我反正感觉很新奇,很痛苦。跟我之前学习的vue之间的差距很大。先来个安装教程吧。1.安装nodejs和npm 在安装ng之前,先要安装nodejs。这个直接去官网下载就可以。这里就不说了。2.安装angular-clinpm install -g @angular/cli这里的安装可能速...

2018-04-17 22:10:16 321

原创 jQuery 三级联动下拉插件

在开发工作中,有时候需要我们自己去手动开发一个插件,刚好我遇到了这样的机会,也有时间去完成这个插件,所以就做了一个适合自己的项目的三级联动下拉插件。下面我来介绍下开发的过程:1、 首先,我们需要构思好自己需要的什么样子的东西,然后根据图纸,先定好样式和基本模型。我自己设计的页面如下:我们需要一个点击的按钮,模拟成select的样式,后面的所属分类是展示我们的结果的地方。 下面的三个框,模拟的是下拉

2018-03-27 09:16:04 2779 4

原创 ES6 --- 对象扩展

对象扩展主要从四个方面开展: 1.简洁表示法 2.属性表达式 3.扩展运算符 4.Object新增方法一、简洁表示法{ // 简洁表示法 let o =1; let k=2; let es5= { o:o, k:k }; let es6={ o, k };

2018-03-27 06:37:33 179

原创 ES6 --- 函数扩展

函数新增特性:参数默认值rest参数扩展运算符箭头函数this绑定尾调用1.默认参数{ function test(x,y = 'world'){ console.log('默认值',x,y); } test('hello'); //hello world test('hello', 'kill'); // hello kill}首先我

2018-03-19 06:50:24 212

原创 ES6 --- 数组扩展

数组的扩展中,我给大家介绍如下几个方法,比较常用的:Array.of()Array.from()Array.fill()Array.keys()Array.values()Array.entries()Array.copyWithin()Array.find()Array.findIndex()Array.includes()它们都分别有什么作用呢,下面我们就逐个讲解。1. A

2018-03-14 07:18:58 551

原创 ES6 --- 解构赋值

上一篇文章 ES6 — let、const与作用域1.什么是解构赋值? ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构赋值。1.1解构赋值的几种类型 左右的都是数组,数组解构赋值 左右都是对象,对象解构赋值 左边是数组,右边是字符串,字符串解构赋值 布尔值解构赋值,函数参数解构赋值,数值解构赋值2.数组的解构赋值2.1 看一种最直接

2018-03-13 06:41:30 1098

原创 ES6 --- let、const与作用域

1、作用域在es6之前,有两个作用域,第一个是全局作用域,第二个是函数作用域。在es6中又新加了一个块作用域。1.1 块作用域

2018-03-09 06:39:37 253

原创 js 关闭网页

<button onclick="window.opener=null;window.open('', '_self');window.close()">关闭</button>很简单的关闭本页面的方法,没有其他额外的提示:window.opener=null; //返回对创建该窗口的 Window 对象的引用。window.open('', '_self')...

2018-03-01 14:25:21 587

转载 Vue2.0 组件之间的通信

一、父子组件之间的通信1、首先搭建环境npm install vue-clivue init webpack vue-communicate //在里面的配置项,可以全部选择nocd vue-communicatenpm run dev 这样一个简单的vue项目就建好了,这里的项目比较简单,所以我们在配置的时候,全部都选择no,来加快安装进度,同时也可以减少干扰(其实也没干扰)。2、布局文件

2018-03-01 14:19:29 202

转载 Vue实现原理

vue.js是数据驱动web界面的库。vue核心思想个:数据驱动、组件系统vue实现数据驱动视图原理 数据驱动是vue最大特点,所谓的数据驱动就是:当数据发生变化的时候,界面会相应的变化,我们不需要手动去修改dom。vue数据驱动的实现 首先vue在实例化的过程中,会遍历传给实例化对象选项中的data选项中的所有属性,并使用Object.defineProperty(ob...

2018-03-01 09:33:20 413

原创 Git 提交时,出现 错误non-fast-forward后的冲突解决

当在git push提交时,遇到 error:failed to push some refs to … Dealing with “non-fast-forward” errors From time to time you may encounter this error while pushing: $ git push origin master To .

2018-02-28 10:05:42 772

原创 javascript日期格式化

前言:在写这篇文章之前,对日期格式可谓是基本不懂,但是毕竟是入门小白,每件事都要自己做一遍才知道,所以在下面的代码中有任何不足之处,还请指教。一、日期格式化方法 直接上代码:Date.prototype.Format = function(fmt) { var o = { "M+": this.getMonth() +1, //月份 "d+": this.getDate(

2018-01-23 12:37:52 164

原创 log4js 2.x的配置使用

刚好有需求,写一个log文件,记录信息。但是在网上找了很久没有合适的方案来给我一个新手去使用的。最终在github上找到一个demo,方案 很好,拿来配置了一下,感觉很不错。地址:https://github.com/xrian/node-log4j2-example首先需要做的,创建一个log4js的配置文件。log4js.json{ "appenders": { "conso

2017-12-20 11:20:47 2998 1

原创 web框架express安装初体验

1、前期准备工作最近在闲暇之余,喜欢上了nodejs,在默默的看了两个星期后,看到了express,mongodb。 对于mongodb,下次再讲,这次主要是关于安装express。详细如下:首先要安装node,我是在node官网直接安装的windows安装包,点击下一步,完 成,就可以了,这方面的教程很多。在使用的时候,可以安装nvm和nrm。方便我们去管理node版本和npm仓库。做完

2017-12-20 09:21:35 254

原创 requirejs初体验

1.初识因为工作的需要,现在开始使用requirejs来做前端模块的管理开发。在这之前都没有使用过这类工具的我,看到这个很懵逼啊有木有。但是没办法,还是要啃下来。 在真的开发之前,先看requirejs官网。竟然是英文的,没办法,勉强看。 我们首先来看下,什么是requirejs。这个很重要,要弄懂自己使用的工具到底是什么,有什么作用。1.1 什么事requirejs RequireJS i

2017-11-07 11:18:54 495

转载 javascript map()方法解析

map() 方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。let numbers = [1, 5, 10, 15];let doubles = numbers.map((x) => { return x * 2;});// doubles is now [2, 10, 20, 30]// numbers is still [1, 5, 10, 15]l

2017-10-23 11:14:53 10667

转载 移动端1px像素边框

造成边框变粗的原因其实这个原因很简单,因为css中的1px并不等于移动设备的1px,这些由于不同的手机有不同的像素密度。在window对象中有一个devicePixelRatio属性,他可以反应css中的像素与设备的像素比。 devicePixelRatio的官方的定义为:设备物理像素和设备独立像素的比例,也就是 devicePixelRatio = 物理像素 / 独立像素。解决边框变粗

2017-10-18 11:04:05 463

原创 git常见问题

一、创建分支并上传1,从已有的分支创建新的分支(如从master分支),创建一个dev分支git checkout -b dev2,创建完可以查看一下,分支已经切换到devgit branch * dev master3,提交该分支到远程仓库git push origin dev4,测试从远程获取devgit pull origin dev或者:

2017-09-28 23:04:51 2980 4

原创 git一小时入门教程及常见错误分析

git 一小时入门教程、git上传github仓库 以及常见git错误命令分析,解决。如fatal: remote origin already exists,permission denied (publickey)...

2017-09-27 16:51:38 556

原创 vue设置webpack文件别名+配置路由的默认class

vue设置webpack文件别名+配置路由的默认class

2017-09-26 22:30:08 1576

原创 vue-router 设置默认路由

vue-router 设置默认路由

2017-09-25 22:28:57 39563 4

原创 javascript jquery 仿京东左侧悬浮框效果

javascript jquery 仿京东左侧悬浮框效果

2017-09-21 10:05:56 4987

原创 javascript 理解和使用回调函数

理解和使用javascript回调函数。

2017-09-20 09:37:21 702

原创 nginx 反向代理最简单配置

nginx 反向代理最简单配置

2017-09-19 14:12:55 555 1

原创 javascript中的call()方法和apply()方法用法总结

javascript中的call()方法和apply()方法用法总结

2017-09-18 13:51:06 813

原创 Vue.js 从安装到实践1

Vue的项目实践,在工作之余,有个前进的目标,给自己动力,加油,你会做的更好!

2017-09-14 14:58:32 340 2

转载 javascript canvas 模拟mac最小化

javascript canvas 模拟mac最小化

2017-09-13 09:59:38 1360

原创 关于javascript对象的点操作符和[]操作符

关于javascript对象的点操作符和[]操作符

2017-09-11 16:40:19 1677

原创 css3 阴影box-shadow transition渐变 transform变换

css3 阴影box-shadow transition渐变 transform变换

2017-09-08 09:56:27 4801

原创 javascript 删除所有空格的方法

javascript 删除所有空格的方法

2017-09-07 15:46:53 1005

jquery -- select美化--多级联动下拉

jQuery 插件编写的select三级联动,多级联动,修改方便,扩展方便

2018-04-03

空空如也

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

TA关注的人

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