Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在供应商中添加所有供应商文件_Ruby On Rails_Ruby On Rails 4_Asset Pipeline - Fatal编程技术网

Ruby on rails 在供应商中添加所有供应商文件

Ruby on rails 在供应商中添加所有供应商文件,ruby-on-rails,ruby-on-rails-4,asset-pipeline,Ruby On Rails,Ruby On Rails 4,Asset Pipeline,是否有办法使用单独的application.css和application.js文件在供应商第三方库中添加所有文件 我是否可以将这两个文件添加到Vendor文件夹和require\u tree下,如下所示 /* *= require_tree assets/stylesheets/. */ 有人说我应该在app/assets/stylsheets/application.css文件中包含,但我认为还有另一种类似于上面的方法。尝试将其放在javascript文件(vendor.js)中: 在

是否有办法使用单独的
application.css
application.js
文件在供应商第三方库中添加所有文件

我是否可以将这两个文件添加到
Vendor
文件夹和
require\u tree
下,如下所示

/*
 *= require_tree assets/stylesheets/.
 */

有人说我应该在
app/assets/stylsheets/application.css
文件中包含,但我认为还有另一种类似于上面的方法。

尝试将其放在javascript文件(vendor.js)中:

在您的css文件(vendor.css)中:

您可以将它们放入
app/assets/stylesheets/vendor.css
app/assets/javascripts/vendor.js
,然后将它们包含在
\u head.html.erb
部分:

<%= stylesheet_link_tag "vendor", :media => "screen, projection" %>
<%= javascript_include_tag "vendor" %>

还有,很酷的用户名!:D

你只需稍微调整一下就可以做到

链轮使用名为index(带有相关扩展名)的文件进行特殊用途

例如,如果您有一个包含许多模块的jQuery库,它存储在lib/assets/library\u name中,那么lib/assets/library\u name/index.js文件将作为该库中所有文件的清单。该文件可以按顺序包含所有必需文件的列表,或者包含一个简单的require_树指令(参见2.2.2)

也就是说,假设您的供应商CSS目录是
vendor/assets/CSS/foo
,包含以下文件

/foo
  bar.css
  baz.css
然后您可以创建一个包含以下内容的文件
foo/index.css

/= require_tree ./
然后,您可以将此库包含在主application.css中,如下所示

/= require foo
免责声明

  • 我自己没有使用过上述技术。我只是按照指南做了个假设

  • 我自己建议,在CSS中,需要一个接一个的CSS作为顺序事项。即使文件在供应商中,您也可以直接在application.css中要求它们,如

    /= require foo/bar
    /= require foo/baz
    

  • 干杯,伙计。我使用的是HAML,实际上我认为最好只将其包含在assets文件夹中的application.js文件中,而不需要单独的配置。@PictureAteDeveloper这对您有用吗,或者你想让我改为使用application.js文件吗?不,我记得有一种方法可以将它包含在
    Vendor
    文件夹中,然后执行
    require\u tree
    只包含你需要的文件。我只是不记得所有的细节和我在哪里读到的。。。
    /= require_tree ./
    
    /= require foo
    
    /= require foo/bar
    /= require foo/baz