目录
归档
日期: 四月 2017
171
2017 年 04 月 04 日
装饰器(Decorator)在React中的应用

一直没理解Decorator的作用,但最近在很多框架和库中看到它的身影,尤其是React和Redux中,所以专门查了一下资料,记录一下。 修饰器(Decorator)是一个函数,用来修改类的行为。不是很理解这种抽象概念,还是看代码讲解实际些。 //定义一个函数,也就是定义一个Decorator,target参数就是传进来的Class。 //这里是为类添加了一个静态属性 function testable(target) { target.isTestable = true; } //在Decorator后面跟着Class,Decorator是函数的话,怎么不是testable(MyTestab…

167
2017 年 04 月 04 日
mitt — 只有200b的事件监听/触发函数

github地址:https://github.com/developit/mitt 这个函数实在精简,拿来分析一下怎么写的。 // @flow // 定义三个flow静态检查的类型,分别是事件处理器,事件处理器列表,事件处理列表组成的对象 type EventHandler = (event?: any) => void; type EventHandlerList = Array<EventHandler>; type EventHandlerMap = { [type: string]: EventHandlerList }; //导出一个函数,参数为一个上面定义的对象类型 exp…

146
2017 年 04 月 04 日
React的模式,技术,技巧–03

github地址:https://github.com/vasanthk/react-bits 下面开始讲解React Anti Patterns(反模式) Props in Initial State 请勿把使用Props生成一个state,因为初始化来自props的state只会在第一次渲染时有效,之后props的变化不会动态改变UI //错误的做法 class SampleComponent extends Component { constructor(props) { super(props); this.state = { flag: false, inputVal: props….

137
2017 年 04 月 03 日
React的模式,技术,技巧–02

github地址:https://github.com/vasanthk/react-bits 我们接着上面的文章说下去。 Async Nature Of setState() 组件内的setState方法异步的,意味着调用该方法后马上获取setState值的话,往往拿到的是原始值。 //我们往往需要在值改变之后执行一些操作,可以通过setState的回调函数操作 _onClickHandler: function _onClickHandler() { console.log(this.state.count); this.setState({ count: this.state.count…

117
2017 年 04 月 03 日
React的模式,技术,技巧–01

github地址:https://github.com/vasanthk/react-bits 这是一份React进阶的文档,需要对React有一定了解,很适合想深入React的人阅读,下面是我的简单解读。 Stateless Functions 无状态组件意思就是组件内无state和生命周期,无需考虑组件的检测和内存分配问题,是一个改善React性能的好办法。 import {PropTypes, ContextTypes} from “react”; //最简单的无状态组件 const Greeting = () => <div>Hi there!</div>; //可以接受两…

158
2017 年 04 月 02 日
最简单批量获取Unsplash图片的方法

我说最近想把博客上面的缩略图换一下,自然想起Unsplash的图片,然后就想到去Github找个脚本工具批量下载下来,但对python不太熟悉,而nodeJs的死活下载不下来,就没继续研究下去,然后就想找个Chrome批量下载插件算了, 大家都推荐Fatkun图片批量下载,问题是这插件检测不到Unsplash上的图片,一看究竟原来现在Unsplash是用React写的,而且把图片路径当作行内样式写在a链接里面,Fatkun正是要检索img标签的工具,这个还不简单,直接在Chrome的Console里运行jquery就可以了。 $(“._1hz5D”).each(function(item, i…

  1. Big Jet Plane Angus & Julia Stone
  2. Make It Up Shura