【问题标题】:Can you use turbolinks with webpack in rails?你可以在 Rails 中使用带有 webpack 的 turbolinks 吗?
【发布时间】:2016-11-18 20:42:54
【问题描述】:

post 提供了一个关于如何用 webpack 替换 rails 资产管道的优秀教程。但是,它声明您应该删除 turbolinks gem。有没有办法做到这一点并且仍然使用 turbolinks?

【问题讨论】:

    标签: ruby-on-rails webpack turbolinks


    【解决方案1】:

    您需要同时拥有来自 npm 和 gem 的 turbolinks,因为 redirect_to 行为已被 gem 内的 ruby​​ 代码修改。

    如果您禁用了 Sprockets(例如使用 --skip-sprockets 选项),您需要在 Gemfile 中禁用 gem 的“自动要求”:

    gem 'turbolinks', require: false
    

    然后您可以在 application_controller.rb 中包含 Turbolinks::Redirection 模块:

    require "turbolinks/redirection"
    
    class ApplicationController < ActionController::Base
      include Turbolinks::Redirection
      # ...
    

    我已经发送了一个拉取请求以允许use Turbolinks without Sprockets

    【讨论】:

    • 看起来拉取请求是在 2018 年合并的,所以这个答案可能需要更新。
    【解决方案2】:

    您可以直接从 NPM https://www.npmjs.com/package/turbolinks 使用它并按照提供的文档进行操作。

    这里是文档https://www.npmjs.com/package/turbolinks#installation-using-npm

    这与您在其他框架中使用 Turbolinks 时相同。

    【讨论】:

      最近更新 更多