javascript - 基于条件的对象键映射不起作用
问题描述
我试过下面的代码,但不工作:
Object.keys(singleproductdetails).map(function(detail, id) {
return (
<div>
<ul className="list-inline">
<li>{detail} <span>:</span></li>
{
id == 12 ?
<li>
<p>
<a
href={'http://' + singleproductdetails[detail]}
target="_blank"
style={{color: "#1e1e80"}}>
{singleproductdetails[detail]}
</a>
</p>
</li> :
<li><p>{singleproductdetails[detail]}</p></li>
}
</ul>
</div>
})
我正在尝试提供指向特定密钥的链接,但我无法做到
解决方案
您的问题如下:您的映射Object
和它们返回您要呈现的 UI,但map
在这种情况下,该方法返回一个Array
of Objects
(这就是您要显示的),因此您需要按顺序读取该数组显示 de UI,例如:
const UI = Object.keys(singleproductdetails).map(function(detail, id) {
return (
<div>
<ul className="list-inline">
<li>{detail} <span>:</span></li>
{
id == 12 ?
<li>
<p>
<a
href={'http://' + singleproductdetails[detail]}
target="_blank"
style={{color: "#1e1e80"}}>
{singleproductdetails[detail]}
</a>
</p>
</li> :
<li><p>{singleproductdetails[detail]}</p></li>
}
</ul>
</div>
});
他们,在你的render
方法中(一个例子):
render() {
return (
<div>{UI}</div>
)
}
这是一个 StackBlitz 显示我在说什么..
推荐阅读
- docker - Docker,悬空容器?
- python - 以编程方式启用或禁用 @auth_basic()
- django - 在模板中处理多个 Django 表单
- spring - Spring的@Bean注解和@Component注解有什么区别?
- reactjs - React-Avatar-Editor 基本示例不起作用
- sql - 内部查询结果的 GROUP BY 不起作用
- hyperledger-fabric - 链码调用另一个链码(Hyperledger Fabric)
- javascript - Tempus Dominus - 使用 javascript 设置日期
- c++ - 如何在 c python api 中从 PyCodeObject 获取源代码?
- python - 使用与另一个具有不同列数的 QGridLayout 相同的列间距