我知道在反应中您不能<html>像字符串一样使用,我正在寻找一种解决方案,但我不清楚,在这种复杂的逻辑中如何可以插入<br/>对象而不是字符串,因为变量'newvalue'需要存储并有条件地将br添加到行中的单独元素。
let values = JSON.parse(value);
let newvalue = '';
values.map((item) => {
for (const key in listViewField.subfields) {
let nameField = key;
if (typeof item[nameField] !=='undefined') {
newvalue += item[nameField]+ ' ';
}
}
// if (newvalue.trim() !=='') newvalue += '<br/>'; // doesn't work
});
value = newvalue;
return <div key={keyIndex}>{value}</div>;
Run Code Online (Sandbox Code Playgroud)
除了使用map之外,您还可以遍历值并将其推入数组。
let values = JSON.parse(value);
let contents = [];
for (let value of values) {
contents.push(<span key={value.key}>{value.name}</span>);
if (value.condition) {
contents.push(<br key={`${value.key}-br`} />);
}
});
return <div>{contents}</div>;
Run Code Online (Sandbox Code Playgroud)
不要忘记为每个项目添加唯一的密钥。
| 归档时间: |
|
| 查看次数: |
753 次 |
| 最近记录: |