http://www.slideshare.net/JustinWu13/j-queryreact-js
很清楚
http://www.slideshare.net/JustinWu13/react-react-tutorial-2
http://www.codedodle.com/2015/04/facebook-like-chat-application-react-js.html
ccorcos
Nov ‘15
@cheapsteak, I’d love to use React Canvas for my entire app. Its so much more performant, especially for swiping and animations. But the reason I decided not to use it is
(1) accessibility and (2) inputs.
You can’t select/highlight text or copy/paste. You can’t tab through input fields. You can’t access the camera. Browsers are designed with all kind of quirks. You can’t pull up the camera on mobile without an element, and you can’t put HTML elements inside a canvas.
https://medium.com/@tomchentw/framework-5e29b0fadeac#.wjfrlldfy
https://medium.com/@tomchentw/framework-1b133c6e320d#.u62x5757o
https://medium.com/@tomchentw/framework-a3befb7db904#.4mihsnswl
封裝程式邏輯
React.createClass 的方式來產生一組Component元件(native ES6 class support is on the road),這點跟其他Framework很像,但是React對待元件狀態有嚴格規定:
this.props為given properties (by owner),不能修改,也不應該被修改
this.state為自身的狀態物件,所有的狀態都源自於此(也只該源至於此,否則就是你的問題)
React透過Framework給出強烈的約束行為,限制你的思考方向,因此我們較容易寫出清楚的程式碼:因為狀態的來源只有一個this.state。也因為我們減少狀態來源到只有一個地方(Single Source of Truth!),元件封裝變得容易許多,邏輯部分也只要搞清楚this.state的變化就好。
達成復用性
基於「封裝程式邏輯」的理由,我們剛剛講了this.state被封裝在元件裡面,因此對於使用這個元件的人(owner)而言,它要怎麼去影響元件的狀態?其實就是根據owner傳進去給該元件的props來決定。你可以說,當你決定好這個元件要回應哪些props的時候,介面就已經訂完了,復用性根本連想都不必想,它已經內化在整個React的核心價值,寫好一個元件後,復用性就在那裡:各位,我們準備好了。
你會想,不,哪有那麼好康的事?事實上,正因React完美達到這兩個聖杯,幾乎所有在這裏撞到牆的Web Developers,一使用後便瘋狂的愛上它,社群幾乎是瞬間飆漲起來,非常之可怕。我誠摯的推薦大家好好的玩一下React,新一波的技術革命正在醞釀!
React components呈現爆炸性成長(1)(2)
「單向資料流」可以說是整個React/flux架構最核心的想法,而且也正因為單向資料流的實現,我們可以輕易實現Computer Science的聖杯「Single Source of Truth」,在flux架構下,所有的資訊來源只有Store(s),沒有第二種可能;這時候,React的props相對於Store而言就收斂成另一種state。
Single Source of Truth的好處非常多,以React Component來講,這讓元件的行為變得可預期,測試更好寫了。即使在不寫測試的情況下,唯一真相會大幅提高元件可信賴度(這邊可以另外開文寫了)。
我現在選擇的Framework是React.js與Flux.js,它提供三大好處解決長久以來開發的問題:
Custom Element:真正Reusable、Scalable的客製化元件。
單向資料流:易除錯、架構清晰且邏輯完整的思考模式。
Single Source of Truth:核心思想。
我相信只要是寫過Single Page Application的開發者,都會知道這三點有多麼重要,而React/flux幫我們優雅地實現了。再不試試看損失的機會成本越大呀!
http://tutorialzine.com/2014/07/5-practical-examples-for-learning-facebooks-react-framework/
现在 react 是否比 polymer 流行,为什么?
http://www.zhihu.com/question/27757141
不仅用于UI构建:Facebook React完全解析
http://www.html-js.com/article/Front-end-Perspective%203105
http://www.reactnative.com/uiexplorer/
http://www.ruanyifeng.com/blog/2015/03/react.html