framework7:从 URL 中剥离工作人员 ID 后标签页链接损坏
framework7: broken tab links after stripping worker IDs from URL
shinyMobile 的 inst/framework7-5.7.8/my-app.js 文件顶部有以下代码块:
if (typeof workerId != "undefined") {
var hash = window.location.hash;
var search = window.location.search;
var pathname = window.location.pathname;
var newpath = pathname + workerId + search + hash;
window.history.replaceState( {} , 'newpath', newpath);
}
只要应用程序不在本地 运行,它就会将一个随机字符串(工作人员 ID)附加到应用程序的 URL。例如,https://my_domain/my_app/ 变为 https://my_domain/my_app/_w_123456/.
这非常烦人,因为它会阻止搜索参数(例如,?param=test
)被持续捕获 (screencast video)。
所以,我按照这个 post 中找到的解决方案,并注释掉上面的行 window.history.replaceState( {} , 'newpath', newpath);
。
现在,工人 ID 不再出现在 URL 中。但是应用程序选项卡的 链接 仍然以某种方式使用工作人员 ID 进行了初始化!例如,https://my_domain/my_app/_w_123456/#tabset-tab1。而且,在第一次点击时,由于我上面的更改,它们会更新为不包含工作人员 ID (https:///my_domain/my_app/#tabset-tab1),导致它们损坏!
请看这个新 screencast.
我试图在 shinyMobile 中找到初始化选项卡链接的脚本,但找不到。
也许这是 framework7 的功能?
任何提示将不胜感激,因为我完全不知道如何解决这个问题。
PS:我对 shinyMobile 的 GitHub 进行了 post,但看看最近的其他问题,我似乎不太可能很快得到答复。
shinyMobile 的 inst/framework7-5.7.8/my-app.js 文件顶部有以下代码块:
if (typeof workerId != "undefined") {
var hash = window.location.hash;
var search = window.location.search;
var pathname = window.location.pathname;
var newpath = pathname + workerId + search + hash;
window.history.replaceState( {} , 'newpath', newpath);
}
只要应用程序不在本地 运行,它就会将一个随机字符串(工作人员 ID)附加到应用程序的 URL。例如,https://my_domain/my_app/ 变为 https://my_domain/my_app/_w_123456/.
这非常烦人,因为它会阻止搜索参数(例如,?param=test
)被持续捕获 (screencast video)。
所以,我按照这个 post 中找到的解决方案,并注释掉上面的行 window.history.replaceState( {} , 'newpath', newpath);
。
现在,工人 ID 不再出现在 URL 中。但是应用程序选项卡的 链接 仍然以某种方式使用工作人员 ID 进行了初始化!例如,https://my_domain/my_app/_w_123456/#tabset-tab1。而且,在第一次点击时,由于我上面的更改,它们会更新为不包含工作人员 ID (https:///my_domain/my_app/#tabset-tab1),导致它们损坏! 请看这个新 screencast.
我试图在 shinyMobile 中找到初始化选项卡链接的脚本,但找不到。 也许这是 framework7 的功能?
任何提示将不胜感激,因为我完全不知道如何解决这个问题。
PS:我对 shinyMobile 的 GitHub 进行了 post,但看看最近的其他问题,我似乎不太可能很快得到答复。