新手问题 关于 link_to 的一个疑问

samxuweb · 2016年03月16日 · 最后由 reyesyang 回复于 2016年03月17日 · 1734 次阅读

今天做一个 Highchart 的图表,发现点击 link_to 链接后需要再刷新一下才显示,加入 :method => :get 参数后即可成功显示。 请教问题如下: link_to 难道不是默认用 get 发送请求? 下面这两个请求过程中有区别吗?

link_to "link", link_path
link_to "link", link_path, :method => :get

Rails 默认启用 Turbolinks,可能是你的 Highchart 没有适配 Turbolinks,:method => :get 则禁用了该链接的 Turbolinks 属性。

简而言之,可能是你的 jQuery(document).ready( ... ); 没有被触发

直接把 turbolinks 禁用掉可能会好些

如上面所说,Highchart 可能依赖的 DOMContentLoaded 或者 jQuery.ready()。Rails 使用了 Turbolinks,会产生一些影响,具体见 https://github.com/turbolinks/turbolinks-classic#events 中的解释。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册