reactjs - 基于布尔值动态改变图像源
问题描述
我有一个 API 调用,它检索一个看起来像这样的对象数组 {id: 12313, isComplete: true}
changeImage(isComplete: string) {
let image = document.getElementById("icon-status") as HTMLImageElement
if(isComplete) {
return image.src = '../ClientApp/images/Green.png'
}
return image.src = "../ClientApp/images/Grey.png";
}
如果 isComplete = true 则基本上设置 image.src = "green",否则设置 image.src = "grey"
我的 HTML 看起来像这样<img src={this.changeImage(task.isComplete)} width="22" alt="" className="icon" id="icon-status"/>
目前我收到 TypeError: Cannot set property 'src' of null..
有任何想法吗?
解决方案
您可以使用task.isComplete
三元运算符来为 img 元素提供正确的src
.
<img
src={
task.isComplete
? "../ClientApp/images/Green.png"
: "../ClientApp/images/Grey.png"
}
width="22"
alt=""
className="icon"
id="icon-status"
/>
推荐阅读
- python - 将张量流导出到matlab
- php - php从对象中检索值
- javascript - How do I dynamically assign a tables value to a v-for
- c# - 如何在给定索引处覆盖数组中的元素?
- javascript - 如何美化shell字符串?
- c# - 解释这个 c# 方法的代码是如何工作的。以及每个部分在做什么
- php - 我正在尝试通过批量插入的演练在 salesforce 上批量插入 CSV
- automatic-ref-counting - 椭圆弧的边界
- php - 如何在 php 中将 2 个 mysqli_fetch_assoc 放在一个 while 循环中?
- css - 在 Chrome 中:单选按钮上的活动状态未在 keyup 上释放(空格键)