OL3:强制重绘图层

2024-01-03

我目前正在将 OpenLayers 客户端版本 2.13.1 升级为新版本的 OpenLayers OL3。我的设置包括作为 WMS 映射服务器的 Mapserver 和前面提到的 OpenLayers 客户端。

在旧系统中,我支持用户交互,如果用户单击地图的某些部分,则会再次生成地图文件,因此我强制重绘图层以使地图的某些部分着色。 OL2版本的代码示例:

$.ajax({
  params: ...
  success: function (data) {
    if (data.success) {
      gisLayer.redraw(true);
    }
  }
});

我想在OL3中获得相同的功能,但没有重绘功能。我发现两个有用的函数,但是为了获得相同的功能还需要做其他事情: -layer.getSource().updateParams(params);和 - 地图.render();

我还创建了一个更复杂的示例,其中我让代码正常工作,但是获取 WMS 图块的请求包含附加参数作为获取唯一请求的关键。示例代码如上:

var params = layer.getSource().getParams();
params.t = getUniqueParam();
layer.getSource().updateParams(params);

好吧,情况就是这样,我想问的是是否有任何可用的功能,可以强制重绘图层,而不需要在WMS请求中添加额外的参数? AFAIK“问题”是浏览器缓存图像,如果请求相同,即之前,浏览器再次显示旧图像。

谢谢你的帮助。


你能检查一下这是否有效吗?

yourLayerSource.dispatchChangeEvent(); 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OL3:强制重绘图层 的相关文章

  • 我如何能够以两行显示标题,并且每行的字体大小不同?

    我正在使用 Google Chart API 创建时间线图 并希望将图的标题修改为两行 问题 我如何能够显示具有不同字体大小的两线图表标题 电流输出 理想输出 相关研究 我唯一能找到的是有人试图用饼图来做到这一点 但我尝试了但无法使其发挥作
  • 暂停除了已激活的玩家之外的所有其他玩家。

    我有这个插件 它可以将不同的样式应用于 html5
  • 使用 jquery 远程图像属性

    目前我正在尝试获取远程图像宽度 高度 我正在开发一个链接共享模块 就像当你在 Facebook 上粘贴链接时 你可以看到标题 描述和图像 所以我尝试使用 php getimagesize 来获取图像宽度 高度 但速度非常慢 所以我正在考虑使
  • Javascript 函数查找数字的倍数

    创建一个名为的函数multiplesOf 它将接受两个参数 第一个参数是数字数组 第二个参数是数字 该函数应返回一个新数组 该数组由参数数组中的每个数字组成 该数字是参数数字的倍数 So multiplesOf 5 6 7 8 9 10 3
  • 以编程方式填写reactjs表单

    我正在编写一个用户脚本 但无法填写由reactjs制作的表单 我的代码 document querySelector id username value email protected cdn cgi l email protection
  • Three.js:缩放几何图形后错误的 BoundingBox

    在我的场景中 我有一个简单的立方体 var test new THREE Mesh new THREE CubeGeometry 10 10 10 new THREE MeshBasicMaterial scene add test 该立方
  • IE从哪个版本开始支持Object.create(null)?

    您可以通过多种方式在 JavaScript 中创建对象 creates an object which makes the Object prototype of data var data1 new Object Object liter
  • 如何更改 Google Maps v3 API for Directions 中的开始和结束标记图像

    我使用 DirectionsRender 绘制了一条路线 但我不知道如何用我自己的标记替换通用的 Google 标记 我知道并在正常的谷歌地图情况下使用它 但发现很难用开始和结束的方向标记来做到这一点 如果这是一个愚蠢的问题 感谢您的任何建
  • Draggable JS Bootstrap 模式 - 性能问题

    对于工作中的项目 我们在 JavaScript 中使用 Bootstrap Modal 窗口 我们想让一些窗口可移动 但我们遇到了 JQuery 的性能问题 myModal draggable handle modal header Exa
  • 防止 iOS 键盘在 cordova 3.5 中滚动页面

    我正在使用 Cordova 3 5 和 jQuery mobile 构建 iOS 应用程序 我在大部分应用程序中禁用了滚动功能 但是 当我选择输入字段时 iOS 键盘会打开并向上滚动页面 我不想要这个功能 由于输入足够高 键盘不会覆盖它 我
  • 调整图像大小并将画布旋转 90 度

    这里有很多关于在 js 上使用画布旋转图像的主题 我阅读了其中的大部分内容 但无法找到解决我的问题的方法 我正在接收任何分辨率的图像 来自上传组件 我将其大小调整为 1024x768 如下所示 var canvas document cre
  • 使用 CSS 或 Javascript 填充动画

    我只是想知道是否可以使用 CSS 或 javascript 创建填充动画 基本上我想创建一个填充动画 如下图所示 http i40 tinypic com eit6ia png http i40 tinypic com eit6ia png
  • window.location 和 location.href 之间的区别

    我对之间的区别感到困惑window location and location href 两者似乎都以相同的方式行事 有什么不同 window location是一个对象 它保存有关当前文档位置的所有信息 主机 href 端口 协议等 lo
  • 为什么我们在打字稿中使用 HTMLInputElement ?

    我们为什么使用 document getElementById ipv as HTMLInputElement value 代替 document getElementById ipv value 功能getElementById返回具有类
  • Firebase 函数 onWrite 未被调用

    我正在尝试使用 Firebase 函数实现一个触发器 该触发器会复制数据库中的一些数据 我想观看所有添加的内容votes user vote 结构为 我尝试的代码是 const functions require firebase func
  • 使用 Vue 的多模式组件

    我在 Vue 中实现动态模式组件时遇到问题 A common approach I follow to display a set of data fetched from the db is I dump each of the rows
  • Javascript - 水波纹效果

    我需要 JS 上的脚本 它将以 水波纹 样式更改 images html 抱歉 6MB GIF 文件 http fcuunited ru temp listening2 gif http fcunited ru temp listening
  • JavaScript 相对路径

    在第一个 html 文件中 我使用了一个变量类别链接 var categoryLinks Career prospects http localhost Landa DirectManagers 511 HelenaChechik Dim0
  • Jquery - 选择选项后如何获取选项的特定数据类型?

    我将直接跳到标记 然后解释我想要做什么 HTML 选择选项
  • 如何确定所有角度2分量都已渲染?

    当所有 Angular2 组件完成渲染时 是否会触发一个角度事件 For jQuery 我们可以用 function 然而 对于 Angular2 当domready事件被触发 html 只包含角度组件标签 每个组件完成渲染后 domrea

随机推荐

  • 自动完成内的 InputLabelProps 不受尊重

    我正在尝试使标签在内部可供选择和复制Autocomplete组件通过设置InputLabelProps sx userSelect text inside renderInput 理想情况下 我希望可以单击或双击来选择标签文本 export
  • 访问 Silverlight DataTemplate 内的元素

    尽管已经有一些相关问题 但我无法找到以下问题的干净解决方案 如果我有一个被多次使用的数据模板 例如 TreeViewItem Header 模板 我如何才能仅更改某些 TreeView 项目的模板 例如 假设我的 TVI HeaderTem
  • 处理证书时发生未知错误

    我有一个自签名证书 我想在我的 websockets 服务器上使用它来处理来自 wss localhost 443 的请求 我从任何网络浏览器连接到服务器 但是 我似乎无法正确进行身份验证 每次我尝试通过 Advanced Rest Cli
  • Play Framework 2.2.1 (Java) 中的 AspectJ

    我想将 AspectJ Weaving 包含在 Play 2 2 1 项目中 我只找到一个答案解释如何将 AspectJ 添加到 Play 2 1 1 项目 https stackoverflow com a 16606135 346421
  • 如何在 UIAlertView 中对齐消息?

    我想知道如何设置警报视图的委托消息的对齐方式 任何人都有解决方案 请回复一些代码 这只是之前答案的稍微简化版本 但我喜欢保持简单 for UIView view in alert subviews if view class isSubcl
  • iPhone 5 及以下版本应用程序崩溃

    我发布了一个简单的游戏 可以在 iPhone 5s 6 6s 和 iPad 上正常运行 但当在 iPhone 5 5c 4S 或 4 上运行时 应用程序会在出现以下代码时崩溃 let delay Int arc4random uniform
  • Junit 断言双数组

    我如何断言两个数组doubles 包含相同的元素 有一些方法可以断言整数数组和其他基本类型包含相同的元素 但不适用于doubles JUnit 4 12 有 实际上它已经是 4 6 的一部分 这是 github 上可用的最旧版本 org j
  • 如何查明特定设备是否支持 SIM 硬件?

    我想根据 SIM 硬件是否存在来禁用我的应用程序中与 CALL 和 SMS 相关的功能 现在 初学者的方法是使用以下命令检查电话类型 if telephonyManager1 getPhoneType TelephonyManager PH
  • 使用带有 fields_for 的数组

    如何使用 fields for 迭代对象数组 全部相同模型 该数组包含由 current user 创建的对象 我目前有 p class fields p
  • 如何解决错误:在此服务器上找不到请求的地址 - CakePHP

    我在我的项目中使用 CakePHP 2 X 但陷入了困境 首先让你知道我使用表单实现了搜索功能POST方法 但为此我发现分页错误 过滤器将不支持下一页 所以我将表单方法更改为GET 现在工作正常 不完全是我所需要的 所有请求的数据都显示在
  • 将非拥有窗口始终设置在顶部 - 就像应用程序“Afloat”

    我设置了一个全局热键RegisterEventHotkey 当用户按下它时 它会获取当前聚焦的窗口CGWindowListCopyWindowInfo 然后我需要将它始终设置在顶部 如果当前窗口在我的进程中 我正在从中执行代码 我可以简单地
  • React 和 Material UI:如何只扩展一张卡

    我使用 React 和 Material UI 来显示一些映射的卡片 当我尝试扩展一张卡时 所有卡都会同时扩展 我发现我必须在 handleExpandClick 函数中传递一个索引 但仍然不起作用 也许我犯了某种错字 我发现这个问题单击展
  • 后台进程的 cy.exec 超时

    我正在尝试使用启动服务器cy exec并像这样后台处理 cy exec nohup python m my module arg 1 failOnNonZeroExit false then result gt if result code
  • 如何防止密码和其他敏感信息出现在 ASP.NET 转储中?

    如何防止在 IIS ASP NET 转储文件中向 ASP NET 网页提交和接收密码和其他敏感数据 重现步骤 使用 Visual Studio 2010 创建 ASP NET MVC 3 Intranet 应用程序 将其配置为使用 IIS
  • Spring嵌套事务

    在我的 Spring Boot 项目中 我实现了以下服务方法 Transactional public boolean validateBoard Board board boolean result false if inProgress
  • 更新更改 svn 时出错

    我安装了 PHPStorm 并使用 SVN 打开包含 PHP 项目的目录 在 更改 的 SVN 选项卡下 我遇到以下错误 Error updating changes svn E155021 The client is too old to
  • Spring JPA Repository - 在服务器重启时保留数据

    我目前正在尝试学习如何使用 Spring Boot 但遇到一个问题 我不确定如何解决 我已经按照使用 JPA 访问数据 http spring io guides gs accessing data jpa 指导 一切正常 但是 如果我重新
  • Pandas 和 Matplotlib - fill_ Between() 与 datetime64

    有一个 Pandas 数据框
  • ggplot 中的热图,每组不同的颜色

    我正在尝试在 ggplot 中生成热图 我希望每个组都有不同的颜色渐变 但不知道该怎么做 我当前的代码如下所示 dummy data data lt data frame group sample c Direct Patient Care
  • OL3:强制重绘图层

    我目前正在将 OpenLayers 客户端版本 2 13 1 升级为新版本的 OpenLayers OL3 我的设置包括作为 WMS 映射服务器的 Mapserver 和前面提到的 OpenLayers 客户端 在旧系统中 我支持用户交互