如何在 JST Underscore 模板中访问 Rails asset_path?
How can I access Rails asset_path in a JST Underscore template?
我需要从 JST 模板访问我的图像 asset_path,我的前端使用该模板使用 Underscore 模板进行渲染。
例如:
filter_item.jst.ejs
<div class="filter-item">
<a href="#" class="thumbnail filter-select" data-preset="<%= preset %>">
<img src="<%= asset_path('balloons.jpg') %>"><br/>
</a>
</div>
如何从我的模板解析 'asset_path' 以使用 Rails 资产管道?同时,我希望能够在 运行 时间从 Underscore 模板传入变量 'preset'。
示例:
var rendered = JST["myapp/templates/filter_item"]({preset: "mypreset"});
我希望 'rendered' 包含 HTML,如下所示:
<div class="filter-item">
<a href="#" class="thumbnail filter-select" data-preset="mypreset">
<img src="/assets/balloons-ASSETHASH.jpg"><br/>
</a>
</div>
几个月大了,但最近我自己也为此苦苦挣扎。 Found the answer on the github page for sprockets
将扩展名 .str
添加到您的文件,您可以在字符串插值标签内使用 ruby/rails 方法:#{ ... }
所以上面修改为使用字符串插值的代码将起作用:
// filter_item.jst.ejs.str
<div class="filter-item">
<a href="#" class="thumbnail filter-select" data-preset="mypreset">
<img src="#{ asset_path('balloons.jpg') }"><br/>
</a>
</div>
至于 data-preset
变量,我对资产管道的工作原理还不够熟悉,无法判断上述方法是否适用。
我需要从 JST 模板访问我的图像 asset_path,我的前端使用该模板使用 Underscore 模板进行渲染。
例如:
filter_item.jst.ejs
<div class="filter-item">
<a href="#" class="thumbnail filter-select" data-preset="<%= preset %>">
<img src="<%= asset_path('balloons.jpg') %>"><br/>
</a>
</div>
如何从我的模板解析 'asset_path' 以使用 Rails 资产管道?同时,我希望能够在 运行 时间从 Underscore 模板传入变量 'preset'。
示例:
var rendered = JST["myapp/templates/filter_item"]({preset: "mypreset"});
我希望 'rendered' 包含 HTML,如下所示:
<div class="filter-item">
<a href="#" class="thumbnail filter-select" data-preset="mypreset">
<img src="/assets/balloons-ASSETHASH.jpg"><br/>
</a>
</div>
几个月大了,但最近我自己也为此苦苦挣扎。 Found the answer on the github page for sprockets
将扩展名 .str
添加到您的文件,您可以在字符串插值标签内使用 ruby/rails 方法:#{ ... }
所以上面修改为使用字符串插值的代码将起作用:
// filter_item.jst.ejs.str
<div class="filter-item">
<a href="#" class="thumbnail filter-select" data-preset="mypreset">
<img src="#{ asset_path('balloons.jpg') }"><br/>
</a>
</div>
至于 data-preset
变量,我对资产管道的工作原理还不够熟悉,无法判断上述方法是否适用。