React&React-Native 學習筆記(持續(xù)更新)

  1. 在es6寫法中,初始化props不再用getDefaultProps方法,而應該使用
static defaultProps {
      xxx: 'xxx' 
}
  1. 在es6寫法中,初始化state不再用getInitialState方法,而應該使用
constructor(props) {
      super(props);
      this.state = {xxx: 'xxx'};

      //在這里可以定義一些你自己需要的屬性
}
  1. 組件可以不繼承component,但是無法使用生命周期函數(shù)??梢允褂胷ender()方法。

  2. 關于constructor()方法



    react文檔中的這段話的意思是說如果你不實現(xiàn)constructor方法的話,你就無法使用this.props對象,而且你得在constructor中最先調(diào)用super(props)。如果你不需要在constructor中初始化state,那么你完全可以不實現(xiàn)constructor方法。

  3. flex布局中為什么ajustifyContent設置的屬性不生效?因為包裹容器的View需要設置height屬性才會生效。

  4. 在mixin中寫的生命周期相關的回調(diào)都會被合并,也就是他們都會執(zhí)行,而不會互相覆蓋掉。
    比如 你在mixin中可以定義 componentDidMount 來初始化組件,他不會覆蓋掉使用這個mixin的組件。實際執(zhí)行的時候,會先執(zhí)行 mixin 的 componentDidMount ,最后執(zhí)行組件的 componentDidMount 方法。
    需要注意的是,因為mixin的作用是抽離公共功能,不存在渲染dom的需要,所以它沒有render方法。如果你定義了render方法,那么他會和組件的render方法沖突而報錯。
    同樣,mixin不應該污染state,所以他也沒有 setState 方法。mixin應該只提供接口(即方法),不應該提供任何屬性。mixin內(nèi)部的屬性最好是通過閉包的形式作為私有變量存在。

  5. 在任何模塊文件內(nèi)部,可以使用__dirname變量獲取當前模塊文件所在目錄的完整絕對路徑。

  6. react自定義的組件名需要大寫,否則無法解析。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容