自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 不定宽高元素的上下左右居中

实现child的宽高不知道的情况下相对于father上下左右或者水平垂直居中,每一种都亲测可用第一种:利用display:flex;最简单的一种<!DOCTYPE html><html lang="en"><head></head><style type="text/css"> .father{ back...

2019-07-18 10:52:17 838

原创 模仿美团外卖的react项目

react-meituan前言该项目是美团外卖, 目前开发了首页,订单页,登录,购物车,我的等,算一个比较完整的项目技术栈react4 + react-redux + react-router + es6 + axios + sass + webpack + antd说明觉得对你有帮助,请点右上角的Star支持一下推荐一下我的另一个项目“四种方式实现前端模块化” 点这里项目运行...

2019-06-26 16:44:06 2068

转载 Mac OSX 快捷键

一.Mac OSX 快捷键ctrl+shift 快速放大dock的图标会暂时放大,而如果你开启了dock放大Command+Option+W 将所有窗口关闭Command+W 将当前窗口关闭(可以关闭Safari标签栏,很实用...

2019-06-13 10:40:27 519

原创 js最全的数组的降维5种办法

(1)数组字符串化let arr = [[222, 333, 444], [55, 66, 77], {a: 1} ]arr += '';arr = arr.split(','); console.log(arr); // ["222", "333", "444", "55", "66", "77", "[object Object]"]所有的元素会转换为字符串,且元素为对...

2019-05-11 16:50:36 17698 2

原创 js中两个感叹号的作用

!!唯一的作用就是把值转化为布尔值,其实对代码逻辑来说没什么卵用,即使不用不会有任何问题,只是看起来统一了数据类型为布尔值,实际上在我看来完全多此一举,建议不用实际上Boolean(a)和!!a效果一样...

2019-04-24 21:07:47 1859

转载 toPrimitive()内部函数

在js中,想要将对象转换成原始值,必然会调用toPrimitive()内部函数,那么它是如何工作的呢?该函数形式如下:toPrimitive(input,preferedType?)input是输入的值,preferedType是期望转换的类型,他可以是字符串,也可以是数字。如果转换的类型是number,会执行以下步骤:1. 如果input是原始...

2019-04-21 21:13:31 5374

原创 基于vue的weex三级地址选择器,省市区地址选择器

weex-area-pickweex-area-pick 基于 alibaba 的weex-ui中的wxc-popup,wxc-overlay 组件开发的三级地址选择器, 感谢weex-ui的开发团队辛苦开源weex-ui。安装npm i weex-area-pick示例图使用方法<template> <div> <t...

2019-04-19 21:40:01 1764

原创 npm i和npm i --save没有区别

在最新版的npm中,你会发现npm i module自动将依赖添加至dependencies,因此不加--save也是可以的不过不加--save有时候本地启动不编译进去,建议还是加上--save和--save-dev区别-S (--save) 安装包信息将加入到dependencies(生产阶段的依赖,也就是项目运行时的依赖,就是程序上线后仍然需要依赖)-D(--save-dev)...

2019-04-14 21:13:55 8334 2

原创 weex页面高度的问题

最近再做一个weex的页面实现的效果是底部tab切换三个页面,刚开始一直纠结中间高度要怎么设置,然后就各种查资料let deviceHeight = weex.config.env.deviceHeight / weex.config.env.deviceWidth * 750;页面整个高度这样设置然后底部是写死的100px,scrollerHeight = deviceHeig...

2019-04-08 09:51:52 3393

原创 jsbridge

2018-12-18 16:35:37 1982

原创 解决jsbridge在原生app上页面调用两次的问题

最近做一个项目,需要h5页面嵌入到安卓原生app上,虽然我不太赞同这种技术方案,但还是做了,因为我认为如果不跨平台运行,最好是安卓自己开发,嵌入h5的除非需要运行在不同的系统上,比如说需要ios和window都需要运行,这时候嵌入h5是一个绝佳的方案,因为节省了很多开发成本。下面说说这两次加载的问题吧,因为需要交互用到了jsbridge,第一次使用这个东西,抱着试试的心态看了api,引入了,挺...

2018-12-17 17:35:11 3272 1

原创 js数组的findIndex和indexOf对比

findIndex() 方法返回传入一个测试条件(函数)符合条件的数组第一个元素位置。findIndex() 方法为数组中的每个元素都调用一次函数执行:当数组中的元素在测试条件时返回true时, findIndex() 返回符合条件的元素的索引位置,之后的值不会再调用执行函数。 如果没有符合条件的元素返回 -1注意:findIndex() 对于空数组,函数是不会执行的。注意:...

2018-12-11 10:15:20 28372 1

转载 iframe及其跨域通讯方式集合

iframe通讯分为两种情况,一个是同域下通讯,另一个是跨域通信================================================================先看看同域下父子页面通讯:我们写两个页面便于比较分析:父页面parent.html:&lt;html&gt;  &lt;head&gt;    &lt;script type="t...

2018-11-07 19:46:38 317

转载 词法作用域和动态作用域

大多数时候,我们对作用域产生混乱的主要原因是分不清楚应该按照函数位置的嵌套顺序,还是按照函数的调用顺序进行变量查找。再加上this机制的干扰,使得变量查找极易出错。这实际上是由两种作用域工作模型导致的,作用域分为词法作用域和动态作用域,分清这两种作用域模型就能够对变量查找过程有清晰的认识。 词法作用域  编译器的第一个工作阶段叫作分词,就是把由字符组成的字符串分解成词法单元。这个概念是...

2018-08-18 11:06:27 352

原创 2018年8月webstrom激活码

webstrom2018最新激活地址:http://xdouble.cn:8888/

2018-07-30 09:13:37 4589 1

转载 js this四种用法

随笔-7  文章-0  评论-1 JS中this的四种用法1.在一般函数方法中使用 this 指代全局对象 1 2 3 4 5 function test(){     this.x = 1;     alert(this.x);   }   test(); // 1 2.作为对象方...

2018-07-28 16:42:12 204

原创 angular双向绑定失效了 因为delete的原因

for (var key in $scope.searchModule) { if ($scope.searchModule[key] === '') { delete $scope.searchModule[key]; }}

2018-06-29 17:38:12 840

原创 chorme谷歌浏览器不能断点调试

在调试&lt;source&gt;的左下方有一个{}图标,提示“pretty print”,点击,chrome就会另外打开一个:formatted的文件,在里面就可以调试了。

2018-06-19 19:32:55 7914 2

转载 http的长连接 和短连接

短连接 连接-&gt;传输数据-&gt;关闭连接 HTTP是无状态的,浏览器和服务器每进行一次HTTP操作,就建立一次连接,但任务结束就中断连接。 也可以这样说:短连接是指SOCKET连接后发送后接收完数据后马上断开连接。   长连接 连接-&gt;传输数据-&gt;保持连接 -&gt; 传输数据-&gt; 。。。 -&gt;关闭连接。 长连接指建立SOCKET连接后不管是否使用都保持连接,但安全...

2018-05-29 20:21:49 1673 2

原创 async/await比promise好的原因

自从Node的7.6版本,已经默认支持async/await特性了。如果你还没有使用过他,或者对他的用法不太了解,这篇文章会告诉你为什么这个特性“不容错过”。本文辅以大量实例,相信你能很轻松的看懂,并了解Javascript处理异步的一大杀器。初识Async/await对于还不了解Async/await特性的同学,下面一段是一个“速成”培训。Async/await 是Javascript编写异步程...

2018-05-28 16:28:17 2078

转载 解决跨域的具体操作

浅谈几种跨域的方法前言最近做项目的时候遇到了一些跨域问题,虽然网上对于跨域的问题分享还挺多的。不过当我实际遇到的时候还是有点懵。趁项目刚上线完,写篇文章总结下。造成跨域的两种策略浏览器的同源策略会导致跨域,这里同源策略又分为以下两种DOM同源策略:禁止对不同源页面DOM进行操作。这里主要场景是iframe跨域的情况,不同域名的iframe是限制互相访问的。XmlHttpRequest同源策略:禁止...

2018-05-28 13:52:52 781

转载 mapStateToProps和mapDispatchToProps

在react-redux开发中每个模块有自己的state用来统一管理视图数据(1)将需要的state的节点注入到与此视图数据相关的组件上function mapStateToProps(state, ownProps) { return { loading:state.getIn(['projectPre', 'projectMgr', 'loading']), ...

2018-05-21 16:18:41 2512

转载 js的深拷贝

在 JS 中有一些基本类型像是Number、String、Boolean,而对象就是像这样的东西{ name: 'Larry', skill: 'Node.js' },对象跟基本类型最大的不同就在于他们的传值方式。基本类型是按值传递,像是这样:在修改a时并不会改到bvar a = 25;var b = a;b = 18;console.log(a);//25console.log(b);/...

2018-05-20 10:03:42 586

转载 promise

ES6 Promise 用法讲解Promise是一个构造函数,自己身上有all、reject、resolve这几个眼熟的方法,原型上有then、catch等同样很眼熟的方法。那就new一个var p = new Promise(function(resolve, reject){ //做一些异步操作 setTimeout(function(){ console.lo...

2018-05-17 09:19:33 141

转载 angular的$q

这篇文章主要介绍了Angular中的Promise对象($q介绍),本文讲解了Promise模式、Q Promise的基本用法、AngularJs中的$q.defferd等内容,需要的朋友可以参考下 在用JQuery的时候就知道 promise 是 Js异步编程模式的一种模式,但是不是很明白他跟JQuery的deferred对象有什么区别。随着公司项目的进行,要跟后台接数据了,所以

2018-05-08 13:47:51 338

原创 js获取对象的属性个数

var obj = {  key1:1,  key2:2,  key3:3  };    Object.getOwnPropertyNames(obj).length  Object.keys(obj).length

2018-05-06 11:27:12 47862

转载 文件的content_type

CONTENT_TYPE = { 16 '.load': 'text/html', 17 '.123': 'application/vnd.lotus-1-2-3', 18 '.3ds': 'image/x-3ds', 19 '.3g2': 'video/3gpp', 20 '.3ga': 'video/3gpp', 21

2018-04-27 14:21:13 2026

原创 css盒模型

基本概念盒模型的组成大家肯定都懂,由里向外content,padding,border,margin.盒模型是有两种标准的,一个是标准模型,一个是IE模型。  从上面两图不难看出在标准模型中,盒模型的宽高只是内容(content)的宽高,而在IE模型中盒模型的宽高是内容(content)+填充(padding)+边框(border)的总宽高。 css如何设置两种模型这里用到了CSS3 的属性 bo...

2018-04-26 10:49:26 221

转载 c语言输出类型

1 一般格式   printf(格式控制,输出表列)   例如:printf("i=%d,ch=%c\n",i,ch);   说明:   (1)“格式控制”是用双撇号括起来的字符串,也称“转换控制字符串”,它包括两种信息:         ①格式说明:由“%”和格式字符组成,它的作用是将输出的数据转换为指定的格式输出。         ②普通字符,即

2017-11-27 10:24:52 7803

转载 数据结构AOE网

认识AOE网  有向图中,用顶点表示活动,用有向边表示活动之间开始的先后顺序,则称这种有向图为AOV(Activity On Vertex)网络;AOV网络可以反应任务完成的先后顺序(拓扑排序)。  在AOV网的边上加上权值表示完成该活动所需的时间,则称这样的AOV网为AOE(Activity On Edge)网,如下图:       图中,顶点表示

2017-11-18 13:45:25 28606 1

转载 排序算法

概述排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。我们这里说说八大排序就是内部排序。        当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速排序、堆排序或归并排序序。   快速排序:是目前基于比较的内部排序中被认为是最好的方法,

2017-11-12 14:27:28 453

原创 排序算法

排序算法的稳定性:经过排序后相同的元素前后位置改变了就是不稳定的算法,反之就是稳定的!得出结论: 选择排序、快速排序、希尔排序、堆排序是不稳定的排序算法,而冒泡排序、插入排序、归并排序和基数排序是稳定的排序算法冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直

2017-09-18 14:21:28 401

转载 flex布局

http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html

2017-09-06 10:33:44 253

原创 background-clip和background-origin的区别

background-clip:border|padding|content该属性指定了背景在哪些区域可以显示,但与背景开始绘制的位置无关,背景的绘制的位置可以出现在不显示背景的区域,这时就相当于背景图片被不显示背景的区域裁剪了一部分一样。background-origin:padding|border|content该属性指定了背景从哪个区域(边框、补白或内容)开始绘制,

2017-09-06 10:13:34 721

转载 flex布局

http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html

2017-08-25 11:39:02 173

转载 ng-options

 效果 http://sandbox.runjs.cn/show/nhi8ubrb.基本下拉效果(lable for value in array)  其中select标签中的ng-model属性必须有,其值为选中的对象或属性值。&lt;div ng-controller="ngselect"&gt;  &lt;p&gt;usage:labelforvalue inarray&lt;/...

2017-08-24 09:49:00 275

原创 一个完整的ajax请求

function loadXMLDoc(){ var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6...

2017-08-18 10:18:37 1358 1

原创 angular $on $emit $broadcast

Angular 控制器中的 $scope 在各作用域之间遵循 JS 的对象原型继承方式当子作用域中没有该对象时,默认向上(父作用域)寻找;子作用域有该对象时,使用子作用域对象。注:这里的父作用域包含直接父级和祖先,子作用域包含直接子级和更下层级例如,HTML如下: Father: {{name}}!

2017-08-18 09:31:46 495

原创 angular中controller之间的通信

AngularJS中非常重要的概念之一就是作用域,不同的作用域之间是相互隔离的,通过常规手段是无法互相访问变量及方法的本次我们着重讲一下父子作用域和兄弟作用域1.父子作用域 当我们的controller层级关系是这种时,ChildCtrl就是子controller,ParentCtrl就是父controller,他们之间的作用域关系就是父子作用域app

2017-08-18 09:26:12 663

转载 $injector的依赖注入

依赖注入分为三种推断式注入这种注入方式,需要在保证参数名称与服务名称相同。如果代码要经过压缩等操作,就会导致注入失败。 app.controller("myCtrl1", function($scope,hello1,hello2){ $scope.hello = function(){ hello1.hello();

2016-12-10 21:31:22 549

空空如也

空空如也

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

TA关注的人

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