从reactjs看flex的设计哲学

fir01 发布于 2016/02/21 09:05
阅读 848
收藏 0

前两天收到了《react引领未来的用户界面开发框架》,因为一直在从事flex的开发,自然比较,自然发现其中80%的雷同之处。深度怀疑react的开发者是曾经的flex开发者一员,或者是仿冒,但是做到了青出于蓝。

1、JSX的组件:和flex新建mxml组件的方式一模一样,引用方式也一样,使用方式也一样。

唯一不用点是jsx多了一种创建html(xml)标记的方式。

flex自定义的组件引用:

<ui:DateField id="dateFrom" text={'2015-02-16'} width="100"/>
react的:

<RepoList
    promise={$.getJSON('https://api.github.com/search/repositories?q=javascript&sort=stars')}
  />



2、react鼓吹的状态机:这一点flex早已有之,并且处理方式,和界面交互的操作方式更简洁:


<mx:states>
		<s:State name="default"/>
		<s:State name="sales"/>
		<s:State name="warehouse"/>
		<s:State name="boss"/>
		<s:State name="accountant"/>
	</mx:states>
状态机使用的其中一种方式,相对react更简单,如下代码直接控制了不同状态的显示和隐藏,不同状态下的组件宽度:



<s:TextInput id="payInAmount1S" width.boss="700" width.accountant="400" includeIn="boss,accountant" width="80" />
3、jsx中对于组件生命周期描述,几个初始化和销毁的方法,基本只有方法名称不同而已。


4、JSX书中有一章:数流据,其中一节“放在state和props的各是哪些部分”,和我们写flex项目的要求也是一模一样。

5、JSX单向数据绑定。flex单向就是默认使用方式,也可以双向。JSX也可以扩展未双向

比较结果:reactjs就是javascript版本的flex。使用的flex的童鞋们,有福了,一天精通。

6、flex的失败不在设计哲学,一是东主不行,毕竟只是专注设计行业的;二是底层写代码的烂,导致性能差强人意。




加载中
0
首席撸出血
首席撸出血
我就知道NG的设计者曾经参与FLEX的设计
0
w
wujwmail
很不幸是目前还没有完全替代flex设计的富客户语言,html5应用起来还是显的力不从心。
返回顶部
顶部