java Wicket处理javascript URL更改
我在{'/map/'
处可见,但也在'/map/z/x/y'
处可见,中心位于不同的位置。如果未设置所有zoom
、lat
和lon
,则会在默认位置显示地图
平移地图时,当前URL将使用javascript更新:history.replaceState({}, "", "/map/z/x/y")
但是,当在“/map”访问映射时,所有wicket生成的URL都是相对于'/map'
的,例如,主页引用'..'
。但是在平移之后,主页的相对url是不正确的,实际上指向/map/z/x
,这再次显示了地图
有没有办法强制Wicket生成绝对url,或者有没有办法通知Wicket当前url已更改
编辑:
这个问题也以不同的方式出现。我有一个预定义的概览列表,由它们的/z/x/y
坐标定义。当z
相等时,创建的链接相对于z
。但是,当缩放更改时,链接概览的新z
值不正确
示例:
我有两个预定义的概述:A = 10/33/44
和B = 10/66/77
。单击A
时B
链接的URL更改为../../66/77
。当地图被平移和缩放时,(浏览器)URL将更改为4/12/3
。单击指向B
的链接时,生成的URL为4/66/77
# 1 楼答案
另一个选项是从一开始就更新url
在页面的构造函数中,如果某些参数没有值,则设置默认值:
这样,Wicket在创建任何链接时都会使用默认值,并且实际上会重定向到
/map/x/y/z