refactor grid control and grid field
This commit is contained in:
@@ -48,24 +48,42 @@ class GridField extends React.Component {
|
||||
|
||||
currentImage() {
|
||||
return isNaN(this.state.currentImage)
|
||||
? <div className="flag-mine"><img src={this.state.currentImage}/><div className="flag-mine-base"></div></div>
|
||||
?
|
||||
<div className="flag-mine">
|
||||
<img src={this.state.currentImage}/>
|
||||
<div className="flag-mine-base"></div>
|
||||
</div>
|
||||
: this.state.currentImage ? <div className="flag-number">{this.state.currentImage}</div> : '';
|
||||
}
|
||||
|
||||
lastClickedRed() {
|
||||
return 'field-red-last' + (this.state.lastClickedRed ? ' last-clicked' : '');
|
||||
lastClickedClass() {
|
||||
return 'field-'
|
||||
+ (this.state.lastClickedRed ? 'red' : '')
|
||||
+ (this.state.lastClickedBlue ? 'blue' : '') + '-last last-clicked';
|
||||
}
|
||||
|
||||
lastClickedBlue() {
|
||||
return 'field-blue-last' + (this.state.lastClickedBlue ? ' last-clicked' : '');
|
||||
lastClickedSrc() {
|
||||
return this.state.lastClickedRed
|
||||
? "/bundles/mineseeker/images/bg-last-red-outbg.png"
|
||||
: "/bundles/mineseeker/images/bg-last-blue-outbg.png";
|
||||
}
|
||||
|
||||
currentLastClicked() {
|
||||
return this.state.lastClickedRed || this.state.lastClickedBlue
|
||||
? <img className={this.lastClickedClass()}
|
||||
src={this.lastClickedSrc()}
|
||||
alt="blue last"/>
|
||||
: '';
|
||||
}
|
||||
|
||||
render() {
|
||||
return (
|
||||
<div className="field-wrapper">
|
||||
<img className="field-target" src="/bundles/mineseeker/images/bg-target-outbg.png" alt="target" onClick={this.props.onClick}/>
|
||||
<img className={this.lastClickedRed()} src="/bundles/mineseeker/images/bg-last-red-outbg.png" alt="red last"/>
|
||||
<img className={this.lastClickedBlue()} src="/bundles/mineseeker/images/bg-last-blue-outbg.png" alt="blue last"/>
|
||||
<img className="field-target"
|
||||
src="/bundles/mineseeker/images/bg-target-outbg.png"
|
||||
alt="target"
|
||||
onClick={this.props.onClick}/>
|
||||
{this.currentLastClicked()}
|
||||
<div className={this.classNameWhenActive()}>
|
||||
<div className="field-corner">
|
||||
{this.currentImage()}
|
||||
|
||||
Reference in New Issue
Block a user