首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么Rails不在供应商目录中预编译javascripts和样式表?

为什么Rails不在供应商目录中预编译javascripts和样式表?
EN

Stack Overflow用户
提问于 2013-05-01 08:05:46
回答 1查看 270关注 0票数 0

在我的项目中,在vendor/assets/javascriptsvendor/assets/stylesheets目录中有第三方JavaScripts和Css文件。在开发模式下,我可以使用javascript_include_tagstylesheet_include_tag方法引用这些目录中的资产。

但是,当我运行rake assets:precompile命令时,这些脚本没有进行预编译,因此无法在生产环境中访问。

请问为什么vendor目录中的资源会被rake任务忽略?

EN

Stack Overflow用户

回答已采纳

发布于 2013-05-01 08:36:57

我能够回答我自己的问题。

这对我来说并不明显,但它确实有意义。除了application.cssapplication.js文件之外,所有其他的.js/.css文件都会被预编译的rake任务忽略。因此,只要在application.js/.css文件中使用//= require name_of_script约定引用脚本和样式表,它们就会被附加到相关文件中。

但是,如果您不希望将某些脚本放在application.js/.css文件中,那么您需要显式地告诉Rails,您仍然希望使用config/environment/production.rb或其他相关运行时环境配置文件中的以下行来预编译这些脚本:

代码语言:javascript
运行
复制
# Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added)
config.assets.precompile += %w( morris.min.js raphael.min.js )
票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16310867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档