Мне нравится идея разделения функциональности, и это похоже на путь будущего.
Но я привык интегрировать javascript внутри циклов во встроенный язык, такой как Rails ERB или PHP, где я могу использовать идентификатор конкретного объекта в качестве ссылки в javascript.
Пример Rails:
<% @comments.each do |comment| %>
<div id="comment_<%= comment.id %>">
<%= comment.text %>
<% link_to_function "Reply", "$('comment_#{comment.id}').insert(\"#{escape_javascript(render :partial => "_form", :locals => {:comment => comment})}\", {position: 'bottom'});" %>
</div>
<% end %>
Это не единственный раз, когда я захотел использовать методы Ruby внутри javascript. Я могу захотеть использовать константы или вызвать другие методы ruby для объекта внутри цикла user.enabled?
или user.full_name
, или визуализировать партиалы с этими объектами и т. Д.
Так, как это должно быть достигнуто, если весь javascript находится в другом файле или вне цикла? Я понял, что вы можете перебирать кучу div в javascript, используя селекторы CSS, но это не позволяет мне вызывать методы ruby для объектов.
Чего мне не хватает? Спасибо!