我正在使用Turbolink的Rails项目中工作。
当用户单击链接时,我希望能够检查Turbolinks是否具有该用户要访问的页面的缓存。如果未缓存,我想显示一个加载微调器。
我已经检查了文档,并调查了不同Turbolinks事件中的数据,但是我一直找不到解决方法。
有没有办法进行这项检查?
任何帮助将不胜感激。
答案 0 :(得分:0)
我发现使用Turbolinks.controller.cache.snapshots
给出了所有缓存快照的列表。
答案 1 :(得分:0)
您可以 在Turbolinks.controller
缓存中进行挖掘,但是由于没有记录,因此无法保证它会一直存在(例如,在下一个版本中)。更为惯用的方法可能如下:
document.addEventListener('turbolinks:click', function () {
showSpinner()
})
document.addEventListener('turbolinks:load', function () {
hideSpinner()
})
turbolinks:load
对于已缓存的页面会立即发生,因此微调框将不可见。