gpt4 book ai didi

ruby-on-rails - 如何使用 rails 3.2 Assets 管道在 lib/assets 中指定 js 文件的路径

转载 作者:行者123 更新时间:2023-12-04 07:32:59 25 4
gpt4 key购买 nike

我的 lib/assets 文件夹中有这些文件(sketchyPad 是一个用于在 html5 Canvas 上绘图的 jQuery 插件,farbastic 是一个由 SketchyPad 使用的颜色选择器):

lib/
|-- assets
| |-- javascripts
| | `-- lib.js
| `-- sketchyPad
| |-- README.md
| |-- brushes
| | |-- simple.js
| | `-- smooth.js
| |-- example
| | |-- index.html
| | |-- jquery-ui-1.8.16.custom
| | | |-- css
| | | | `-- ui-lightness
| | | | |-- images
| | | | | |-- ui-bg_diagonals-thick_18_b81900_40x40.png
| | | | | |-- ui-bg_diagonals-thick_20_666666_40x40.png
| | | | | |-- ui-bg_flat_10_000000_40x100.png
| | | | | |-- ui-bg_glass_100_f6f6f6_1x400.png
| | | | | |-- ui-bg_glass_100_fdf5ce_1x400.png
| | | | | |-- ui-bg_glass_65_ffffff_1x400.png
| | | | | |-- ui-bg_gloss-wave_35_f6a828_500x100.png
| | | | | |-- ui-bg_highlight-soft_100_eeeeee_1x100.png
| | | | | |-- ui-bg_highlight-soft_75_ffe45c_1x100.png
| | | | | |-- ui-icons_222222_256x240.png
| | | | | |-- ui-icons_228ef1_256x240.png
| | | | | |-- ui-icons_ef8c08_256x240.png
| | | | | |-- ui-icons_ffd27a_256x240.png
| | | | | `-- ui-icons_ffffff_256x240.png
| | | | `-- jquery-ui-1.8.16.custom.css
| | | `-- js
| | | `-- jquery-ui-1.8.16.custom.min.js
| | |-- jquery.min.js
| | `-- mattfarina-farbtastic-4bb6bbf
| | |-- CHANGELOG.html
| | |-- LICENSE.txt
| | |-- README.html
| | |-- README.md
| | |-- demo1.html
| | |-- demo2.html
| | |-- farbtastic.css
| | |-- farbtastic.js
| | |-- farbtastic.min.js
| | |-- marker.png
| | |-- mask.png
| | `-- wheel.png
| |-- sketchyPad.css
| `-- sketchyPad.js

所以我想包括sketchyPad.js、sketchyPad.css 以及brushes 文件夹中的所有js 以及farbtastic.min js 文件。

在 app/assets/javascripts/application.js 我放:
//= require sketchyPad (this part works fine and correctly includes sketchyPad.js)

但我也想包括
lib/assets/sketchyPad/brushes/simple.js
lib/assets/sketchyPad/brushes/smooth.js

和刷子文件夹中的任何其他 js 文件,如果 require_directory 不在应用程序/ Assets 中,而是在 lib/ Assets 或供应商/ Assets 中,我该如何使用它?

更新:

我试过了
require_tree sketchyPad

但错误:
require_tree argument must be a relative path

我试过了
require_tree ./sketchyPad

但错误:
require_tree argument must be a directory

我认为 require_tree 必须相对于 app/assets 文件夹,但放置类似
require_tree ./../lib/assets/sketchyPad/brushes

也给出错误:

require_tree 参数必须是一个目录

无论哪种方式,我都不想包含整个 sketchyPad 树,因为它确实包含了一些我不想包含的 js 文件……例如示例,并且它是旧 jQuery 的自己版本。

更新:

我最终做的是在 lib/assets/javascripts 文件夹中创建一个 lib.js,其中包含一个 list ,以包含相对于 lib/assets 文件夹而不是 app/assets 文件夹的 SketchyPad js 文件。

在 app/assets/javascripts/application.js 我放:
//= require jquery
//= require jquery_ujs
//= require jquery-ui
//= require lib

在 lib/assets/javascripts/lib.js 我放了:
//= require ./../sketchyPad/sketchyPad
//= require_tree ./../sketchyPad/brushes
//= require ./../sketchyPad/example/mattfarina-farbtastic-4bb6bbf/farbtastic.min

这似乎包括正确的文件。有没有更简单的方法来做到这一点?

最佳答案

也许:

//= require_tree ./sketchyPad

关于ruby-on-rails - 如何使用 rails 3.2 Assets 管道在 lib/assets 中指定 js 文件的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9614321/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com