2017-04-20 42 views
0

创建一个阵营组成的“标准”的方式constructor将任何渲染之前运行,我可以使用componentDidMount等之前渲染阵营替代编码风格以“构造”

export class BotShowUI extends Component{ 
    constructor(props) { 
     super(props) 
    } 
.... 

我的问题是在运行下面的代码如何在return语句中呈现之前获得构造函数类型方法或其他方法以运行(类似于componentDidMount)?

import React, {Component} from 'react'; 
    import PropTypes from 'prop-types'; 

    const BotShowUI = ({ bot, onClick }) => { 
     return(
      <div id={bot.id} onClick={onClick}> 
       {bot.id} : {bot.text} 
      </div> 
     ) 
    } 

    BotShowUI.propTypes = { 
     bot: PropTypes.object.isRequired, 
     onClick: PropTypes.func.isRequired 
    }; 

    export default BotShowUI; 
+1

你没有。像你在这里的功能组件只能让你定义渲染方法。如果你想利用其他功能,你需要使用标准的基于类的组件定义 – Hamms

+0

我看,谢谢:-) – Rory

+0

如果你喜欢更多的功能风格,你可以通过使用重构提供的HOC来使无状态的功能组件成为有状态的。 https://github.com/acdlite/recompose –

回答