gpt4 book ai didi

java - Wicket 处理 javascript URL 更改

转载 作者:行者123 更新时间:2023-11-28 02:50:46 25 4
gpt4 key购买 nike

我有一个带有地理 map 的页面,安装在 '/map/#{zoom}/#{lat}/#{lon}' 上。该 map 在 '/map/' 处可见,但在 '/map/z/x/y' 处也可见,但以不同的位置为中心。如果zoomlatlon 没有全部设置,则在默认位置显示 map 。

平移 map 时,使用 javascript 更新当前 URL:history.replaceState({}, "", "/map/z/x/y")

但是,当在“/map”访问 map 时,所有 wicket 生成的 URL 都是相对于 “/map” 的,例如主页指的是 “..” .但是平移后,首页的相对url不正确,实际指向/map/z/x,再次显示 map 。

有没有办法强制 Wicket 生成绝对 url,或者有没有办法通知 Wicket 当前 url 已更改?

编辑:该问题也以不同的方式出现。我有一个预定义概述列表,由它们的 /z/x/y 坐标定义。当 z 相等时,创建的链接是相对于 z 的。但是,当缩放比例发生变化时,新的 z 值对于链接的概览是不正确的。

示例:

我有两个预定义的概述:A = 10/33/44B = 10/66/77。当点击A时,B的链接URL变为../../66/77。平移和缩放 map 时,(浏览器)URL 更改为 4/12/3。单击指向 B 的链接时,生成的 URL 为 4/66/77

最佳答案

另一种选择是从头开始更新 url!

在页面的构造函数中,如果某些参数没有值,则设置默认值:

public MapPage(PageParameters params) {
super(params); // this is important!

String lon = params.get("lon").toString();
if (lon == null) params.set("lon", DEFAULT_LON);
// same for lan and zoom
}

这样 Wicket 将在创建任何链接时使用默认值,并且实际上将重定向到 /map/x/y/z

关于java - Wicket 处理 javascript URL 更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39394085/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com