Rails 7配置Importmap遇AssetNotPrecompiledError问题求助
解决Rails 7 Importmap配置时的Sprockets预编译错误
直接在
config/initializers/assets.rb中添加以下代码,将app/javascript目录排除出Sprockets的资产扫描范围:Rails.application.config.assets.excluded_paths << Rails.root.join('app/javascript')这样Sprockets就不会处理该目录下的JS文件,也就不会触发预编译检查。
检查布局文件(比如
app/views/layouts/application.html.erb),确保使用<%= javascript_importmap_tags %>加载JS,而非旧的javascript_include_tag。确认
app/javascript/application.js的导入逻辑正确,示例如下:import "@hotwired/turbo-rails" import "controllers"
升级后的Rails默认仍会让Sprockets扫描app/javascript目录,但Importmap是直接加载该目录下的文件,不需要Sprockets预编译,因此排除该目录即可解决冲突。
内容的提问来源于stack exchange,提问作者knagode
相关产品推荐
相关产品推荐

