React

Immutable 详解及React中实践

In parahome on 2016-12-08 by para

Shared mutable state is the root of all evil(共享的可变状态是万恶之源) –Pete Hunt

有人说 Immutable 可以给 React 应用带来数十倍的提升,也有人说 Immutable 的引入是近期 JavaScript 中伟大的发明,因为同期 React 太火,它的光芒被掩盖了。这些至少说明 Immutable 是很有价值的,下面我们来一探究竟。

JavaScript 中的对象一般是可变的(Mutable),因为使用了引用赋值,新的对象简单的引用了原始对象,改变新的对象将影响到原始对象。如 foo ={a:1};bar =foo;bar.a=2 ,你会发现此时foo.a也被改成了2。虽然这样做可以节约内存,但当应用复杂后,这就造成了非常大的隐患,Mutable带来的优点变得得不偿失。为了解决这个问题,一般的做法是使用shallowCopy(浅拷贝)或deepCopy(深拷贝)来避免被修改,但这样做造成了CPU和内存的浪费。

Immutable 可以很好地解决这些问题。

React Design Pattern Discuss

In parahome on 2016-11-11 by para

transformation

The core premise for React is that UIs are simply a projection of data into a different form of data. The same input gives the same output. A simple pure function.

State数据格式设计中的思考

In parahome on 2016-11-02 by para

前言

Redux中,State是整个应用的数据,本质上是一个普通对象。

State决定了整个应用的组件如何渲染,渲染的结果是什么。可以说,State是应用的灵魂,组件是应用的肉体。

所以,在项目开发初期,设计一份健壮灵活的State尤其重要,对后续的开发有很大的帮助。(请注意,并不强制要求所有的数据都保存到State中,有些属于组件的数据是完全可以留给组件自身去维护的。)

React文档中没提到的事

In parahome on 2016-10-20 by para

前言

对很多 react 新手来说,网上能找到的资源大都是些简单的 tutorial ,React文档也是非常值得一读的,英文版的有着非常详细的介绍。它们能教会你如何使用 react ,但并不会告诉你怎么在实际项目中优雅的组织和编写 react 代码。用谷歌搜中文“ React 最佳实践”发现前两页几乎全都是同一篇国外文章的译文…所以我总结了下自己过去那个项目使用 React 踩过的一些坑,也整理了一些别人的观点,希望对部分 react 使用者有帮助。