223次提交,历时两个多月,我们团队终于发布了自己的第一款微信小程序「码易」

2020-04-15
阅读 2 分钟
3.4k
如果大家了解团队在组建之初,团队成员的真实水平,那么你一定会跟我的想法一样: 这是一件了不起的事情 1 艰难的开始 团队成立的初衷,是因为群里的凌子亦凌老板离职之后空余时间比较多,然后我就想,我们拉几个人,一起搞一个自己的小程序吧。于是我就在群里发了邀请 过年那天晚上凌老板发了888超大红包,简直帅呆了,...

超性感的React Hooks(一):为何她独具魅力

2019-11-27
阅读 5 分钟
4k
正如标题所示,我准备写一系列文章介绍React Hooks。 过去大半年里,我将React Hooks应用到了许多大型项目,其中5个全新重构,其他项目由于时间关系少量使用。 这些项目包括 React Native 基于ant-design-pro重构的中后台应用 基于React,专注于小程序开发的Taro应用 以create-react-app为基础,自主构建的web应用 基于b...

五个大型项目实践总结,解密React Hooks最佳实践

2019-11-27
阅读 1 分钟
15.1k
我也不知道应该说点撒。 就是一个目录,后续应该还有10多篇的样子,主要是实战,更新了会把目录补上。 超性感的React Hooks(一):为何她独具魅力 超性感的React Hooks(二):再谈闭包 超性感的React Hooks(三):useState 超性感的React Hooks(四):useEffect 超性感的React Hooks(五):自定义hooks 超性感的Rea...

MobX详解(二):ES7 装饰器 decorator

2018-01-30
阅读 8 分钟
5.6k
在学习ES7装饰器语法之前,需要先温习一下ES5的一些基础知识。 假设有对象如下:(便于理解) {代码...} 在ES5中,对象中的每个属性都有一个特性值来描述这个属性的特点,他们分别是: configurable: 属性是否能被delete删除,当值为false时,其他特性值也不能被改变,默认值为true enumerable: 属性是否能被枚举,也就是...

MobX详解(一):装饰者模式

2018-01-30
阅读 7 分钟
3.8k
例如一个游戏角色,我们在不改变这个角色对象的条件下,给角色穿一件装备(武器),那么角色的属性(攻击力)就会增加。这个过程,就可以由妆饰者模式来完成。

笔记:隐式转换规则

2018-01-10
阅读 2 分钟
3.5k
要求:学习,并背诵全文 原始值 类型 Undefined Null String Boolean Number 值 undefined null 所有字符串 true false 所有数字/NaN 引用类型 Object的成员叫对象,包括Array,Function,Math,Date,JSON,RegExp等除了原始值之外的所有的类型的成员。 valueOf / toString Object String Array Number Date Boolean Fu...

前端基础进阶(八):深入详解函数的柯里化

2017-12-30
阅读 13 分钟
8.3k
柯里化是函数的一个比较高级的应用,想要理解它并不简单。因此我一直在思考应该如何更加表达才能让大家理解起来更加容易。 以下是新版本讲解。高阶函数章节由于一些原因并未公开,大家可以自行搜索学习 通过上一个章节的学习我们知道,接收函数作为参数的函数,都可以叫做高阶函数。我们常常利用高阶函数来封装一些公共...

前端基础进阶目录

2017-12-30
阅读 1 分钟
41.3k
前端基础进阶(一):内存空间详细图解前端基础进阶(二):执行上下文详细图解前端基础进阶(三):变量对象详解前端基础进阶(四):详细图解作用域链与闭包前端基础进阶(五):全方位解读this前端基础进阶(六):在chrome开发者工具中观察函数调用栈、作用域链与闭包前端基础进阶(七):函数与函数式编程前端基础...

前端基础进阶(十五):详解 ES6 Modules

2017-12-30
阅读 5 分钟
4.3k
对于新人朋友来说,想要自己去搞定一个ES6开发环境并不是一件容易的事情,因为构建工具的学习本身又是一个非常大的方向,我们需要花费不少的时间才能掌握它。

前端基础进阶(十四):es6常用基础合集

2017-12-30
阅读 8 分钟
6.8k
ES6彻底改变了前端的编码风格,可以说对于前端的影响非常巨大。值得高兴的是,如果你熟悉ES5,学习ES6并不需要花费太多的时间就可以掌握,因为常用的基础语法并不多,花少量的时间,就可以开始我们的ES6之旅了。

前端基础进阶(十三):透彻掌握Promise的使用,读这篇就够了

2017-12-30
阅读 15 分钟
9.7k
Promise的重要性我认为我没有必要多讲,概括起来说就是必须得掌握,而且还要掌握透彻。这篇文章的开头,主要跟大家分析一下,为什么会有Promise出现。

前端基础进阶(十二):深入核心,详解事件循环机制

2017-12-30
阅读 9 分钟
10.3k
JavaScript的学习零散而庞杂,因此很多时候我们学到了一些东西,但是却没办法感受到自己的进步,甚至过了不久,就把学到的东西给忘了。为了解决自己的这个困扰,在学习的过程中,我一直试图在寻找一条核心的线索,只要我根据这条线索,我就能够一点一点的进步。

前端基础进阶(十一):详细图解jQuery对象,以及如何扩展jQuery插件

2017-12-30
阅读 6 分钟
4.2k
早几年学习前端,大家都非常热衷于研究jQuery源码。我还记得当初从jQuery源码中学到一星半点应用技巧的时候常会有一种发自内心的惊叹,“原来JavaScript居然可以这样用!”

前端基础进阶(十):面向对象实战之封装拖拽对象

2017-12-30
阅读 10 分钟
4.7k
前面几篇文章,我跟大家分享了JavaScript的一些基础知识,这篇文章,将会进入第一个实战环节:利用前面几章的所涉及到的知识,封装一个拖拽对象。为了能够帮助大家了解更多的方式与进行对比,我会使用三种不同的方式来实现拖拽。

前端基础进阶(九):详解面向对象、构造函数、原型与原型链

2017-12-30
阅读 13 分钟
8.6k
如果要我总结一下学习前端以来我遇到了哪些瓶颈,那么面向对象一定是第一个毫不犹豫想到的。尽管我现在对于面向对象有了一些的了解,但是当初的那种似懂非懂的痛苦,依然历历在目。

前端基础进阶(七):函数与函数式编程

2017-12-30
阅读 10 分钟
8.2k
纵观JavaScript中所有必须需要掌握的重点知识中,函数是我们在初学的时候最容易忽视的一个知识点。在学习的过程中,可能会有很多人、很多文章告诉你面向对象很重要,原型很重要,可是却很少有人告诉你,面向对象中所有的重点难点,几乎都与函数息息相关。

前端基础进阶(六):在chrome开发者工具中观察函数调用栈、作用域链与闭包

2017-12-30
阅读 6 分钟
9.6k
在chrome的开发者工具中,通过断点调试,我们能够非常方便的一步一步的观察JavaScript的执行过程,直观感知函数调用栈,作用域链,变量对象,闭包,this等关键信息的变化。因此,断点调试对于快速定位代码错误,快速了解代码的执行过程有着非常重要的作用,这也是我们前端开发者必不可少的一个高级技能。

前端基础进阶(五):全方位解读this

2017-12-30
阅读 7 分钟
9.9k
我们在学习JavaScript的过程中,由于对一些概念理解得不是很清楚,但是又想要通过一些方式把它记下来,于是就很容易草率的给这些概念定下一些方便自己记忆的有偏差的结论。

前端基础进阶(四):详细图解作用域链与闭包

2017-12-30
阅读 5 分钟
21.5k
闭包有多重要?如果你是初入前端的朋友,我没有办法直观的告诉你闭包在实际开发中的无处不在,但是我可以告诉你,前端面试,必问闭包。面试官们常常用对闭包的了解程度来判定面试者的基础水平,保守估计,10个前端面试者,至少5个都死在闭包上。

前端基础进阶(三):变量对象详解

2017-12-30
阅读 4 分钟
11.1k
开年之后工作热情一直不是很高,这几天一直处于消极怠工状态。早上不想起床,起床了不想上班。明明放假之前工作热情还一直很高,一直心心念念的想把小程序项目怼出来,结果休假回来之后画风完全不一样了。我感觉自己得了严重了节后综合征。还好撸了几篇文章,勉强表示这一周的时间没有完全浪费。这篇文章要给大家介绍的...

前端基础进阶(二):执行上下文详细图解

2017-12-30
阅读 3 分钟
13.7k
暂时先不管这个例子,我们先引入一个JavaScript中最基础,但同时也是最重要的一个概念执行上下文(Execution Context)。

前端基础进阶(一):内存空间详细图解

2017-12-30
阅读 4 分钟
13.2k
因为JavaScript具有自动垃圾回收机制,所以对于前端开发来说,内存空间并不是一个经常被提及的概念,很容易被大家忽视。特别是很多不是计算机专业的朋友在进入到前端之后,会对内存空间的认知比较模糊,甚至有些人干脆就是一无所知。

项目总结 20171226

2017-12-27
阅读 6 分钟
5.9k
1. 借助require.context预加载图片 详情文档地址 项目中为了确保页面显示时,图片已经全部加载完毕,因此需要提前加载图片,加载图片的过程使用进度条显示。 在webpack构建的项目中,可以使用require.context来获取到静态资源的地址。语法如下: {代码...} 第一个参数表示要搜索的文件夹目录,该目录支持相对路径与在配...

滚动相关知识点总结

2017-12-15
阅读 3 分钟
4.4k
document.documentElement获取到的是html标签。IE支持,chrome目前也支持。 document.body获取到的是body标签。chrome/ff支持。

使用思维导图,优雅的完成自己的代码

2017-12-15
阅读 4 分钟
13.9k
说了你可能不信,我经常怀疑自己 不!适!合!写!代!码! 写代码的时候,我经常脑壳一晕,或者去群里摸一下鱼,然后就突然搞不清上一段代码写来干嘛的!! 刚才那段代码,真的是我写的? 直到,我发现了思维导图的妙用。 思维导图,本是用来记知识点的。 然而某一刻我头冒青烟,灵光一闪,一个念头铺面而来,挥之不去...

记录一次利用Timeline Performance工具进行 React性能优化的真实案例

2017-12-13
阅读 6 分钟
3.9k
在学习react之初的时候,由于对react不够了解,写的项目虽然功能都实现了,但是性能优化方面的考虑却做得很少,因此回过头来发现自己以前写的react代码确实有点糟糕。

async/await 更好的异步解决方案

2017-12-13
阅读 4 分钟
9.6k
在实际开发中总会遇到许多异步的问题,最常见的场景便是接口请求之后一定要等一段时间才能得到结果,如果遇到多个接口前后依赖,那么问题就变得复杂。大家都一直在尝试使用更好的方案来解决这些问题。最开始只能利用回调函数,后来开始有人使用Promise的思维来搞定。到ES6中开始支持原生的Promise,引入Generator函数。

事件只绑定一次的实现

2017-12-13
阅读 1 分钟
1.7k
{代码...} {代码...}

react进阶系列 - 高阶组件详解四:高阶组件的嵌套使用

2017-06-27
阅读 2 分钟
4.6k
但是当我们的项目中使用了路由组件react-router,那么很有可能这些页面在需要严重登录状态的同时,会用到withRouter来获取路由相关的信息。这个时候就涉及到一个高阶组件的嵌套使用。因为每一个高阶组件最终返回的其实都是一个组件,而且都是新增基础组件的能力,因此我们可以简单粗暴的直接嵌套。

react进阶系列:高阶组件详解(三)

2017-06-27
阅读 1 分钟
2.7k
可能看过我以前文章的同学应该会猜得到当我用New的方法来举例学习高阶组件时,接下来要分享的就是柯里化了。高阶组件与函数柯里化的运用是非常能够提高代码逼格的技巧,如果你有剩余的精力,完全可以花点时间学习一下。