我有一个循环,提示用户输入,然后根据该输入向linestring添加一个新段。
while (data) {
point = processData(data) // returns an array [x,y]
linestringFeature.getGeometry().appendCoordinate(point)
data = prompt('Enter data')
}
然而,linestring在用户退出循环之前不会被绘制。我需要为用户提供视觉反馈,因为每个部分都添加到linestring。我使用OpenLayers 6.5。对如何做到这一点有什么建议吗?
这不是一个正确的答案,但是对于评论来说有点长了。
这只是一个想法,但请尝试添加超时:
while (data) {
point = processData(data) // returns an array [x,y]
linestringFeature.getGeometry().appendCoordinate(point)
window.setTimeout(() => {
data = prompt('Enter data')
}, 100)
}
100可以是任何数字,真的。
如果这有效,则表明浏览器没有在while循环/阻塞提示序列中重新绘制页面。
如果它不工作,让我知道!