超级(道具)是否必要?

时间:2018-06-11 08:01:59

标签: reactjs facebook react-native react-props

我正在查看Facebook React Native文档,我在State部分的构造函数中看到了super(props)。

found that我们只有在想要在构造函数中访问道具时才使用super(props)。

我的问题,是不是没有必要在这里使用道具呢?

class Blink extends Component {
  constructor(props) {
  super(props);
  this.state = {isShowingText: true};

  // Toggle the state every second
  setInterval(() => {
   this.setState(previousState => {
    return { isShowingText: !previousState.isShowingText };
  });
}, 1000); 

1 个答案:

答案 0 :(得分:0)

不,它没有必要。你可以拥有一个只有一个渲染的类组件。

示例:

class EventsContainer extends React.Component {
 render() {
 const futurEvents = getFuturEvents(this.props.events);
 const passedEvents = getPassedEvents(this.props.events);

 return this.props.loggedIn
 ? <div>
     <NavbarContainer />
     <Events
       futurEvents={futurEvents}
       passedEvents={passedEvents}
       deleteEventInStateAndDB={this.props.deleteEventInStateAndDB}
     />
   </div>
 : <Redirect push to='/'/>
 }
}