【发布时间】:2023-03-29 22:25:01
【问题描述】:
我有一个 Rails 4 项目。根据post,“Rails 4 也没有源映射。据我所知,截至今天,这只是 Rails 5 的一部分。”
如果我使用 Sprockets 进行预编译,我想我必须在 Rails 4 中没有源映射。问题是我包含了一个供应商 jquery 库,其中包含它自己的源映射。位置在vendor/assets/javascripts/jquery.nanoscroller.js.map。
每次我加载页面时,我都会收到此错误:
ActionController::RoutingError (No route matches [GET] "/assets/jquery.nanoscroller.js.map"):
这让我很烦,所以我从供应商那里删除了文件。现在该文件在任何地方都不存在。我的项目的任何资产目录中都没有 .map 扩展名。
然后我删除了public/assets 文件夹,以确保 Rails 不会从公共缓存资产中提供服务。它现在应该使用 Rack Middleware 来编译每个请求的资产,并且由于那个 .map 文件已经消失,它不应该被编译。但是,删除公共/资产并重新启动服务器后,我仍然收到此错误:
ActionController::RoutingError (No route matches [GET] "/assets/jquery.nanoscroller.js.map"):
我什至尝试将以下内容添加到开发中,以确保将其设置为 false:
config.serve_static_files = false
(使用此设置,它不应该提供来自公共/资产的文件)。
我在这里错过了什么?
【问题讨论】:
标签: ruby-on-rails