Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Ruby on Rails 5-Turbolink 3无法正常工作_Ruby On Rails_Ruby_Turbolinks_Ruby On Rails 5 - Fatal编程技术网

Ruby on rails Ruby on Rails 5-Turbolink 3无法正常工作

Ruby on rails Ruby on Rails 5-Turbolink 3无法正常工作,ruby-on-rails,ruby,turbolinks,ruby-on-rails-5,Ruby On Rails,Ruby,Turbolinks,Ruby On Rails 5,我使用的是Ruby on Rails 5,使用的是turbo link,如下所示: <%= javascript_include_tag 'custom-plugins', 'data-turbolinks-track' => true %> true%> 它在RubyonRails 4上运行良好,但在RubyonRails版本5上存在问题。一旦单击back,js/css就无法正确加载 任何帮助都将不胜感激 对于带有js的TurboLink,这是一种常见的情况。Turbol

我使用的是Ruby on Rails 5,使用的是turbo link,如下所示:

<%= javascript_include_tag 'custom-plugins', 'data-turbolinks-track' => true %>
true%>
它在RubyonRails 4上运行良好,但在RubyonRails版本5上存在问题。一旦单击back,js/css就无法正确加载


任何帮助都将不胜感激

对于带有js的TurboLink,这是一种常见的情况。Turbolinks有助于更快地加载特定页面。但它有时也会阻止js运行。因此,在加载此特定页面时,请使用以下行

<%= link_to "example_page", example_page_path, :"data-no-turbolink" => true %> 
true%>
或 把这个写在你的版面上

<body <%= "data-no-turbolinks='true'".html_safe if controller_name=="example_controller" && action_name=="example_page" %>>

停止turbolink在此特定页面中工作。

参考

Turbolinks自第4版以来一直是Rails的一部分,这可能是人们讨厌或喜欢的特性之一;这里没有中间立场

有了Rails 5,我们将获得一个新版本,在HTML5自定义数据属性的帮助下,我们将期望Rails应用程序有更好的速度和渲染

这个新版本中最重要的变化是部分替换功能。从客户端,我们将能够告诉Turbolinks哪些内容需要更改/替换,哪些内容不需要更改/替换

TurboLink将寻找HTML5的自定义属性,并在我们的应用程序中决定替换策略

为了在客户端触发替换,我们可以使用或更新我们的。和之间的区别在于,第一个命令将向服务器发出一个命令,以获取必须用于替换我们的HTML的HTML,而另一个命令则要求我们提供用于其操作的HTML

使用这两个函数,我们可以将包含或HTML元素数组的哈希传递给或

Action  Result
Turbolinks.visit(url, { change: ['entries'] })  Will replace any element with custom attribute and any element with its id listed in change.
Turbolinks.visit(url)   Will keep only elements with custom attribute and replace everything.
Turbolinks.visit(url, { keep: ['flash'] })  Will keep only elements with custom attribute and any element with its id listed in keep, everything else will be replaced.
Turbolinks.visit(url, { flush: true })  Will replace everything
我们可以使用和从服务器端触发相同的功能,两者都可以接收和作为选项,但也可以使用或强制使用或不使用TurboLink重定向


无论您是否喜欢TurboLink,这可能是一个尝试的好时机,看看它是否适合您的应用程序。

不加载的确切含义是什么?我打开我的网站www.example.com->一切正常我打开另一个页面->www.example.com/xyz,然后单击“上一步”按钮,现在页面渲染不正确。你是说页面渲染不工作?或者JS函数未加载?意味着JS和CSS(引导程序不工作)您是否尝试过实际执行任何基本调试步骤?在浏览器中打开web控制台并检查错误-如果没有立即告诉您错误所在,请在问题中添加特定的错误消息。对于那些自称为开发人员的人来说,你也许应该知道,任何人都有绝对的优势,但用错误描述来猜测这种模糊的优势。