1. 程式人生 > >React學習總結(二)

React學習總結(二)

JSX學習總結

一、   什麼是JSX:一個比較高階、直觀的語法糖;一種類似於XML的語法。

(語法糖:是指在計算機語言中新增的某種語法,對語言功能沒有什麼影響,其作用是為了增加程式碼的可讀性減少程式碼的出錯)

   React的核心機制之一就是建立虛擬DOM:通過JavaScript在記憶體中建立虛擬DOM來操控真實DOM,從而提高整體的效能。通過傳統的JavaScript的確可以建立完整的介面DOM樹,但其可讀性不好,於是React就發明了JSX,用我們熟悉的HTML語法建立虛擬DOM。

   React並不會真正的繫結事件到每一個具體的元素上,而是採用事件代理的模式:在根節點document上為每種事件新增唯一的Listener,然後通過事件的target找到真實的觸發元素。這樣從觸發元素到頂層節點之間的所有節點如果有繫結這個事件,React都會觸發對應的事件處理函式。這就是所謂的React模擬事件系統。儘管整個事件系統由React管理,但是其API和使用方法與原生事件一致。這種機制確保了跨瀏覽器的一致性:在所有瀏覽器(IE8及以上)都可以使用符合W3C

[http://www.w3.org/TR/DOM-Level-3-Events/]標準的API,包括stopPropagation(),preventDefault()等等。對於事件的冒泡(bubble)和捕獲(capture)模式也都完全支援(像window7預設的IE8瀏覽器是不支援capture的)。

二、JSX有什麼用?

   能夠讓程式設計師比較直觀的通過熟悉的HTML語法建立虛擬DOM從而操縱真實DOM。

三、JSX的使用

1、採用駝峰命名法來描述事件名稱;

2、由於JSX只是一種語法,Javascript的關鍵字class和for不能再XML出現,得用“className”和“htmlFor”代替;

資料參考CSDN: