Используйте JS var в строке ruby внутри файла js
Я пытаюсь использовать js var внутри строки ruby (которые все находятся внутри файла js.erb):
my_file.js.erb:
var x = 3;
var credit = "<%= CreditsController.some_method(x) %>";
Я знаю, как заменить текст в js var, но не знаю, как это сделать, прежде чем запускать ruby part <% =%>
Спасибо!
2 ответа
Решение
Это невозможно, потому что ваш файл my_file.js.erb будет обработан в my_file.js на стороне сервера, заменяя каждый код ruby их выходными данными, которые он предоставляет. Наконец, ваш навигатор выполнит JavaScript.
Как сказал Стефан, вы можете попробовать извлечь это значение с помощью вызова ajax или попытаться реализовать эту функцию в javascript, если это возможно.
Что вы можете сделать, это что-то вроде:
в вашем CreditsController:
def some_method
@credit = 0
end
и в вашем some_method.js.erb:
var credit = "<%= @credit %>";