为什么我的主要scss文件需要被称为'application.scss'?为什么不能将其命名为“foo.scss”并包含在application.html.erb中?
manifest.js
// JS and CSS bundles
//
//= link_directory ../javascripts .js
//= link_directory ../stylesheets .css
// Images and fonts so that views can link to them
//
//= link_tree ../fonts
//= link_tree ../imagesCss导入
<%= stylesheet_link_tag 'foo', media: 'all' %>使用“foo.scss”时出错
资产在生产中未被宣布为预编译。将
Rails.application.config.assets.precompile += %w( foo.css )添加到config/initializers/assets.rb并重新启动服务器
如果我使用文件名'application.scss‘,它就能正常工作。
发布于 2016-11-28 04:55:26
Rails预编译资产。编译文件的默认匹配程序包括application.js、application.css和所有来自app/assets文件夹的非JS/CSS文件(这将自动包括所有图像资产),其中包括您的宝石:
[ Proc.new { |filename, path| path =~ /app\/assets/ && !%w(.js .css).include?(File.extname(filename)) }, /application.(css|js)$/ ]如果要包含其他manifests或单独的stylesheets和JavaScript文件,则可以将它们添加到config/initializers/assets.rb中的预编译数组中。
Rails.application.config.assets.precompile += %w( foo.js foo.css )因此,这告诉rails在生产模式下预编译manifest文件。这就是您的错误在assets.rb中添加并重新启动服务器时所说的。
https://stackoverflow.com/questions/40836529
复制相似问题