【发布时间】:2017-06-02 21:46:36
【问题描述】:
对于这个看似简单的问题,我找不到任何答案。在我的 rails5 应用程序中,一些链接确实使用 turbolinks 来加载新页面。但有些只是启动整页重新加载。
该链接没有附加 js,该链接上未禁用 turbolinks。
此链接使用 turbolinks:
= link_to qm_input_path('hour') do ...
<a class="navbar-brand" href="/qimen/hour/input"> ...
在行动中
render layout: 'input'
而这个链接没有:
= link_to qm_chart_path(@foo, @bar), class: 'btn btn-default pull-right next' do ...
<a class="btn btn-default pull-right next" href="/qimen/hour/chart/foo/bar"> ...
在行动中
render layout: guess_layout
因此,没有任何东西明确阻止 turbolinks 工作。
为什么?
【问题讨论】:
-
与
input布局相比,您是否在guess_layout中使用了不同的 JavaScript 文件或不同的样式表? -
'input'和guess_layout给出相同的<head>。 Js和样式被简单的stylesheet_link_tag,javascript_include_tag所包含。其中有= javascript_include_tag 'https://maps.googleapis.com.....'。但是这个<head>用于所有布局。我的guess_layout仅在 url 中给出参数?print=1时才解析为'print'。然后<head>有额外的 js 在页面打开时启动打印窗口。但在我的用例中,我不会去那里。我只是按.next链接,它只是浏览到类似的页面。页面完全重新加载。 -
奇怪。你能发布一个演示吗?
-
我可以授予访问该站点的权限。你是这个意思吗?
-
是的,一个指向演示问题的站点的链接。或者,如果您可以创建一个新的应用程序来演示同样可以解决的问题
标签: ruby-on-rails-5 turbolinks turbolinks-5