Raphael Image URI in Rails

Raphael Image URI in Rails

本文关键字:Rails in URI Image Raphael      更新时间:2023-09-26

我知道我们可以通过这种方式使用raphael制作图像

var my_image = paper.image("computer.png", 0, 0, 100, 50)

问题是,当这段代码放在/app/assets/javascripts在Rails文件夹结构中,它不能访问URI,因为在生产中,我们只能在控制器或视图中做asset_path("computer.png")

现在,如何解决这个问题?这是在javascript资产文件中获得相对URI ?我正在考虑将图像作为SVG符号放在index.html.erb中。因为这是一个。erb文件,我们可以使用assets_path。不,怎么使用拉斐尔的符号?

还是有更好的解决方案?谢谢你

您可以尝试使用gem js_assets

在你的application.js

//= require app_assets

该指令在全局作用域中添加了方法asset_path。

添加到过滤文件*.png。为此,添加initizlizer:

# config/initializers/js_assets.rb
JsAssets::List.allow << '*.png'

获取app/assets/images/computer.png文件在javascript中的路径:

var path_to_computer = asset_path('computer.png')
// the function will return for development:
// /assets/computer.png
//
// and for production
// /assets/computer-5eb3bb250d5300736006c8944e436e3f.png