React const 渲染方法语法的 propTypes?

React const render method syntax for propTypes?

语法问题...我试图找出在较新的 React const render 方法中设置 proptypes 的位置。

在这个 const 中,我应该把 propTypes: {...} 块放在哪里?

const PlaylistAlbumInfoOverlay = () => (

  <div className="playlist-album-info-overlay">
    <h2>Album Title</h2>
    <p className="album-kind">Private</p>
  </div>
);

export default PlaylistAlbumInfoOverlay;

类似于不使用 ES7 class 属性 语法 (stage 1 proposal) 将 propTypes 附加到 class 的方式,您可以将它们附加为一个属性的箭头函数:

const PlaylistAlbumInfoOverlay = () => (
  <div className="playlist-album-info-overlay">
    <h2>Album Title</h2>
    <p className="album-kind">Private</p>
  </div>
);

PlaylistAlbumInfoOverlay.propTypes = {
  // ...
};

export default PlaylistAlbumInfoOverlay;

documentation 说:

They are pure functional transforms of their input, with zero boilerplate. However, you may still specify .propTypes and .defaultProps by setting them as properties on the function...

所以你应该能够做到这一点:

const PlaylistAlbumInfoOverlay = () => (

  <div className="playlist-album-info-overlay">
    <h2>Album Title</h2>
    <p className="album-kind">Private</p>
  </div>
);

PlaylistAlbumInfoOverlay.propTypes = {
     text: React.PropTypes.string  //example
}

export default PlaylistAlbumInfoOverlay;