如何在webpacker中使用js.erb和json.erb模板?

时间:2018-04-03 16:48:11

标签: ruby-on-rails

serviceworker-rails gem有一个很好的例子,说明我为什么要这样做。 tldr我可以使用资产助手和循环生成清单。

// app/javascripts/packs/manifest.json.erb

<% icon_sizes = Rails.configuration.serviceworker.icon_sizes %>
{
  "name": "My Progressive Rails App",
  "short_name": "Progressive",
  "start_url": "/",
  "icons": [
  <% icon_sizes.map { |s| "#{s}x#{s}" }.each.with_index do |dim, i| %>
    {
      "src": "<%= image_path "serviceworker-rails/heart-#{dim}.png" %>",
      "sizes": "<%= dim %>",
      "type": "image/png"
    }<%= i == (icon_sizes.length - 1) ? '' : ',' %>
  <% end %>
  ],
  "theme_color": "#000000",
  "background_color": "#FFFFFF",
  "display": "fullscreen",
  "orientation": "portrait"
}

我还想将其他rubyland配置注入我的包文件中,例如公共密钥和js包应该具有的其他运行时应用程序设置。默认rails用erb处理这种情况。我怎么能用webpack而不是sprockets来做同样的事情呢?

我尝试在app / javascripts / packs中放一个json.erb,但没有去。

1 个答案:

答案 0 :(得分:0)

要获得erb支持,请尝试rails webpacker:install:erb