如何在Rails中有两个单独的编译资源文件?
例如,我想要一个public.min.js文件和一个admin.min.js文件。
答案 0 :(得分:2)
像你这样构建你的应用程序:
- app
- assets
- javascripts
- admin
(all admin-facing js files go here)
- public
(all public-facing js files go here)
admin.js
public.js
- stylesheets
- admin
(all admin-facing css files go here)
- public
(all public-facing css files go here)
admin.css
public.css
在admin.js
:
//= require_tree ./admin
在public.js
:
//= require_tree ./public
在admin.css
:
/*
*= require_directory ./admin
*/
在public.css
:
/*
*= require_directory ./public
*/
在app/views/layouts/application.html.erb
(或您的主要布局文件中):
<!-- Change this: -->
<%= stylesheet_link_tag "application", media: "all" %>
<%= javascript_include_tag "application" %>
<!-- To this: -->
<%= stylesheet_link_tag "public", media: "all" %>
<%= javascript_include_tag "public" %>
在每个面向管理员的视图中,通过一些布局或手动将其添加到每个视图中:
<%= stylesheet_link_tag "admin", media: "all" %>
<%= javascript_include_tag "admin" %>
在config/environments/production.rb
中,在configure
块中添加此行:
config.assets.precompile += %w( public.js admin.js public.css admin.css )
答案 1 :(得分:0)
在主应用程序布局文件中(通常为:/app/views/layouts/application.whatever)
在head元素中定义2个单独的js文件。
javascript_include_tag 'public'
javascript_include_tag 'admin'
然后在您的assets / javascripts文件夹中创建名为“public”和“admin”的2个单独的js文件,并使用这些文件将您的javascript添加到。