从 Rails 中删除 Webpacker 6. 现在资产编译不起作用

Dropping Webpacker from Rails 6. Now asset compilation doesn't work

ruby '3.0.1' 'rails', '~> 6.1.2'

我正在从一个 rails 项目中删除 Webpacker。我假设它最初是使用 rails new 和 webpacker 标志创建的,但我不确定。到目前为止,我所做的只是删除 yarn、browersify、babel 等源文件,然后将我所有的 javascript 和样式表移动到 app/assetsapp/vendor.

我也将此添加到 application.html.erb:

    <%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track" => "reload" %>
    <%= javascript_include_tag "application", "data-turbolinks-track" => "reload" %>

有一段时间,一切正常。我正在纠正路径,修复小错误等等。然后在我重新启动服务器一次后,我得到了一个新的错误,现在我被卡住了。

Sprockets::Rails::Helper::AssetNotPrecompiled in Universes#index

Showing /var/app/app/views/layouts/application.html.erb where line #8 raised:

application.css

这是我目前所知道的:

如有任何帮助,我们将不胜感激。谢谢。

对于 application.scss,您应该确保 sass-rails gem 在您的 gem 文件中。

除此之外,也许还有一些帮助来自:https://guides.rubyonrails.org/asset_pipeline.html#in-development

Lam Phan 有我需要的东西。我的 assets/config/manifest.js 配置不正确。我将其恢复为:

//= link_tree ../images
//= link_directory ../javascripts .js
//= link_directory ../stylesheets .css

然后确保 application.scssapplication.js 在这些路径上。在那之后一切都很容易。非常感谢您的宝贵时间。