【发布时间】:2019-01-16 21:37:47
【问题描述】:
我的渲染函数为数据中的每个圆圈返回未定义。
我有不同数量的圆圈,这就是为什么我需要映射所有圆圈。
这是调用渲染函数的正确方法吗?
我怎样才能实现正确返回圆圈?
JS
const d = data;
document.getElementById("gElement").innerHTML = `
${d.g.map((entry)=> {
console.log(entry);
return `
<g class="${entry.class}" id="${entry.id}">
<polygon
$points ="${entry.polygon.points}">
</polygon>
${render(entry.circle)}
</g>`
}).join('')}`
function render(circ){
`${circ.map((entry) =>{
return`
<circle
cx = "${entry.cx}"
cy = "${entry.cy}"
r = "${entry.r}"
fill = "${entry.fill}">
</circle>`
}).join('')}`
}
data.json
{
"id": "gElement",
"g": [
{
"class": "polygon",
"id": "elements100",
"polygon": {
"points": "337,212.00000000000006,352.99999999999994,150,433.99999999999994,147.00000000000006,431,206.00000000000006"
},
"circle": [
{
"cx": "337",
"cy": "212.00000000000006",
"r": "2",
"fill": "none"
},
{
"cx": "352.99999999999994",
"cy": "150",
"r": "2",
"fill": "none"
},
{
"cx": "433.99999999999994",
"cy": "147.00000000000006",
"r": "2",
"fill": "none"
},
{
"cx": "431",
"cy": "206.00000000000006",
"r": "2",
"fill": "none"
}
]
}
]
}
【问题讨论】:
标签: javascript jquery template-literals