deck.gl - 在deck.gl中触发BitmapLayer的重绘
问题描述
我有一张地图作为图像,可以通过 url 上的 API 访问。作为映射过程的一部分,此图像会不断更新,而 url 始终相同。
为了在前端显示它(反应),我使用BitmapLayer并将图像属性设置为所需的 url。它在初始化时正确呈现。
我遇到的问题是如何更新地图。我有一个在服务器上更新图像时触发的事件。触发此事件时,我会更新图层。但是图像没有更新,这实际上是有道理的,因为deck.gl 仅在更改时更新并且url没有更改......所以我尝试通过使用updateTriggers属性来解决这个问题,如下所示:
new BitmapLayer({
id: "bitmap-layer",
image: image_url,
updateTriggers: {
image: [Math.random()]
}
})
具有在触发器更改时更新图像的想法(在触发更改事件时调用)。但是图像没有得到更新。
我还尝试在每次更改时更改图像层的id,但图像仍然没有改变。
因此,我的问题是,是否有可能在不更改 url 的情况下触发图像更新?
解决方案
在同一 url 刷新图像的一种方法是添加唯一的缓存清除查询参数,例如:
image: image_url + "?t=" + new Date().getTime(),
推荐阅读
- xml - xpath select item by property value one of enum
- python - 如何从中获取价值
大家好,正如标题中总结的那样,我想从输入类型=“隐藏”中获取值,但它返回“无”。是否存在获得它的方法?提前致谢!我期望的是从“PaReq”和“MD”中获取值
<input type="hidden" name="PaReq" value="eNpVUstuwjAQ/JWID4gfOA+jxRJtKpVKpAjooUfXOJCKJ
- excel - 遍历 excel 单元格范围并模拟两者的颜色填充
- mysql - Unable to filter result in sql query where two conditions are simultaneously true
- pandas - 将每 n 行连接成一行 pandas
- android - 更新带有 ListAdapter 的 RecyclerView 时不会显示数据
- python - Python:如何填写网络表单并获取生成的页面源
- javascript - Relations don't work properly in TypeGraphQL (You need to provide explicit type for...)
- ios - 如何在快速注册时根据该电话号码检索uid
- regex - Regex to match and split every third occurrence of a string