天天看點

Angular VS React Native 元件篇

廢話不多說,本篇主要是介紹Angular中各種元件的用法,順便跟比較RN中的元件做比較

1.元件生成方式

    在RN中,元件的生成是通過注解,RN中則是通過繼承元件類。

2.元件互動方式

    2.1 父子元件資料互動方式    

    NG中元件之間進行資料互動,主要通過元件中暴露的兩個接口,Input和Output。 RN中,元件互動主要通過屬性props。在RN中元件分成屬性跟狀态兩個屬性,屬性用于控制元件的行為,狀态控制視圖層。父元件調用子元件時,通過對子元件的的屬性指派,傳遞資料,子元件無法直接給父元件的屬性指派,是以可以通過父元件傳遞一個回調給子元件,子元件通過回調抛出資料。

    2.2 其他元件資料互動方式

    NG中可以通過服務共享資料。注意,通過服務共享資料,必須保證服務沒有被多次執行個體化,在需要共享資料的元件的共同父級子產品中執行個體化服務即可。NG中還可以通過路由傳遞資料。這個在RN中的也可以通過路由傳參,但是它沒有類似服務的東西,該怎麼傳遞資料呢。可以通過PubSubJS,建構一個類似釋出訂閱者模式的機制,在需要接收資料的元件訂閱事件,在需要抛出資料的元件釋出資料

    2.3 父子元件之間方法互調

    調用方法其實都是一個原理,擷取父或子元件的目前對象(this)。NG中可以直接通過 #name 的方式聲明一個變量擷取子元件的this指針,RN中沒有提供這樣的文法糖,我們可以通過props屬性,把子元件的this指針傳給父元件。參考資料互動方式,父元件提供一個回調給子元件用于接收this指針即可。子元件調父元件的方式都一樣,父把自己傳給子就好了。

繼續閱讀