我对 React 比较陌生,但我正在尝试设置一个可以从任何地方打开的模式。这是我尝试打开模式的方式:
class SearchResults extends React.Component {
static propTypes = {
status: React.PropTypes.string.isRequired,
results: React.PropTypes.array.isRequired,
onResultClick: React.PropTypes.func.isRequired
}
constructor(props) {
super(props)
}
onUploadButtonClick() {
console.log('here');
}
render () {
const uploadButtonFn = this.onUploadButtonClick
let childElements = [];
childElements.unshift((
<div className="upload-button-wrapper" key="upload-button">
<button type="button" className="upload-button" onClick={uploadButtonFn}><span>+</span> Upload Your Vidy</button>
</div>
))
return (
<div className='search-results'>
<div className='inner-content'>
{(() => {
if (this.props.status === 'fetching') {
return <h1>searching</h1>
}
if (this.props.status === 'ready') {
return (
<Masonry
className={'my-gallery-class'} // default ''
elementType={'div'} // default 'div'
disableImagesLoaded={false} // default false
updateOnEachImageLoad={false} // default false and works only if disableImagesLoaded is false
>
{childElements}
</Masonry>
)
}
})()}
</div>
<GetMoreResult />
</div>
)
}
}
export default SearchResults
这就是我试图打开模式的方式。我几乎肯定有更好的方法。我正在使用redux
,我想。我已经继承了这个项目,所以我可能不太顺利。
任何帮助将不胜感激。我想我需要在我的主布局中包含模式,但是我该如何触发它呢?