reactjs - 在reactjs中更改图像onclick
问题描述
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;
我已经获取了路由器链接并在其中插入了图像。图像显示一切都很好。但,
我的问题是,当我单击第二个路由器链接时,我想将第二个路由器链接图像转移到第一个路由器链接图像,并将第一个路由器链接图像转移到第二个路由器链接图像。
试图在切换的帮助下解决这个代码,但它不起作用我担心这个任务。
解决方案
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>
推荐阅读
- angular - 如何处理会话
- git - Nix 包管理器和 GitLab 的问题
- python - Porter Stemmer 可以返回词缀而不是词干吗?
- vue.js - 如何将事件附加到 vuejs 中的变量
- android - 添加电子邮件和密码验证时应用程序崩溃
- java - 从 Java 生成的 Sha256 哈希与 OpenSSL 和 Sha256Sum 实用程序不同。为什么?
- javascript - 反应:this.state.renderData.filter 不是一个函数
- r - 如何在 R 中估计 Black-schole 或 GBM 的参数
- python - 如何使用 python django 将 OpenCV 输出发送到浏览器?
- python - 使用pyspark编写orc文件时如何避免解析错误?