] Как мне получить escape_javascript и другие помощники в моем js-файле, предварительно обработанном sprockets (а не представлении)?

Я использую Rails 3.1 и другие звездочки.

Я хочу использовать ERB для предварительной обработки файла js, который затем будет включен с использованием javascript_include_tag. Он генерируется из кода, поэтому я предварительно обрабатываю его с помощью ERB, но я не могу добраться до помощников, таких как escape_javascript из ActionView :: Helpers :: JavaScriptHelper

Скажем, мой файл называется dynamic.js.erb , и он содержит

obj = {
 name: "test",
 tag: "<%= escape_javascript( image_tag( "logo.png" ) )%>"
};

Как мне остановить его выдачу ошибки:

throw Error("NoMethodError: undefined method `escape_javascript' for #<#<Class:0x1067da940>:0x116b2be18>
(in /Users/me/site/app/assets/javascripts/dynamic.js.erb)")

Когда я захожу на свой локальный сервер и запрашиваю /assets/dynamic.js

15
задан user2262149 23 August 2018 в 20:01
поделиться