2016-11-23 71 views
0

使用反應,終極版我最近開始調用方法的JSX元素。有一件事情經常與我的大腦混淆,那就是如何從文檔中重寫所有代碼示例,這些文檔通常是基於我的功能代碼庫編寫的對象。如何書寫時功能反應

我現在在這些情形之一的;我無法找到一個方法來調用我用我的部件之一,其屬於react-custom-scrollbarslink to docs)的方法。以下是該組件的簡化版本。我已經註釋了我想要調用方法scrollToBottom()的部分。

紅利問題:如果我跳過使用onUpdate()事件,如果我想在messages陣列附加消息時想撥打scrollToBottom(),我該如何繼續?

const Chat = ({messages, app, keyDown, pressSend, setMessage, toggleEnter}) => { 

    return (
    <div id="orbit-chat-content"> 
     <Scrollbars 
     onUpdate={() => { 
      // 
      // HERE I WANT TO SCROLL TO BOTTOM 
      // 
      // this.scrollToBottom() 
      // 
     }} 
     className="react-scrollbar"> 
     <div id="orbit-chat-conversation"> 
      { messages.map(message => <Message {...message} />) } 
     </div> 
     </Scrollbars> 
    </div> 
); 
}; 

export default Chat; 

非常感謝您花時間看這個!

+0

無狀態組件沒有一個實例。 – webdeb

回答

0

的回答你的問題:

無狀態組件沒有裁判。你通常會用它來訪問滾動條實例。

你真正的問題:

...如何從通常寫爲基礎,以我的功能代碼庫對象 單證重新寫所有的 代碼示例。

您不需要。有缺陷的組件不會被棄用,等等。他們是基地。 PureRender組件/功能組件,只是一個除了在堆棧提供編寫小獨立的組件,如按鈕的一種方式。

當然,你可以寫一個整個應用程序只與無狀態組件,但如果你需要的內部狀態,進入的情況下,一些內部邏輯,你可以和應該使用普通的組件了。

+0

這很有道理。感謝您花時間! – mufasa