在reactjs中更改图像onclick

时间:2020-01-13 01:37:08

标签: reactjs

const imagesPath = {
  eligibilitypng: "C:/Users/DHANUNJAY/datri/src/validatemoilenumberpng.png.",
  validatemoilenumberpng: "C:/Users/DHANUNJAY/datri/src/eligibilitypng.png"
}
         
class App extends Component {        
  state = {
    open: true
  }  
  toggleImage = () => {
    this.setState(state => ({ open: !state.open }))
  }

  getImageName = () => this.state.open ? 'eligibilitypng' : 'validatemoilenumberpng' 
  render() {    
    const imageName = this.getImageName();

    return (           
      <HashRouter>        
       <nav className="nav">         
        <div>      
        <div className="content">
        <div class="donorTitle"><b>Donor Registration</b></div>  <br/>    
          <ul className="header">  
          <div class="sibling-fade">

            <font size="18px" color="white"><li> <NavLink to="/"><img src={eligibilitypng} onClick={this.toggleImage}/></NavLink></li></font>
            <li> <NavLink to="/ValidateMobileNumber"><img src={validatemoilenumberpng}/> </NavLink></li> 
            
        </div>      
             <Route exact path="/" component={EligibilityCheck}/> 
            <Route path="/ValidateMobileNumber" component={ValidateMobileNumber}/>
            
            </div>      
        </nav>    
        </HashRouter>          
    );     
  }      
}          
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
      
export default App;             

我已经获得了路由器链接并将图像插入其中。图像显示一切都很好。但是,

我的问题是,当我单击第二个路由器链接时,我想将第二个routerlink图像转换为第一个路由器链接图像,并将第一个路由器链接图像转换为第二个routerlink图像。

试图在切换的帮助下解决此代码,但无法正常工作,我对此任务感到担心。

1 个答案:

答案 0 :(得分:0)

import eligibilitypng from "C:/Users/DHANUNJAY/datri/src/validatemoilenumberpng.png.";
import validatemoilenumberpng from "C:/Users/DHANUNJAY/datri/src/eligibilitypng.png";


<li onClick={this.toggleImage}>{this.state.open ? <img src={eligibilitypng} /> : <img src={validatemoilenumberpng } />}</li>