файл js.erb не запускается - PullRequest
       42

файл js.erb не запускается

0 голосов
/ 30 января 2019

У меня есть три файла: Контроллер:

   def index
    @filterrific = initialize_filterrific(
      DimDictionary,
      params[:filterrific],
      select_options: {},
      persistence_id: 'shared_key',
      default_filter_params: {},
      available_filters: [ :dictionary_word_filter ]
    ) || return

    @dictionaries = @filterrific.find.limit(30)

    respond_to do |format|
      format.html
      format.js
    end
  end

Index.html.haml

= form_for_filterrific @filterrific do |f|
  .ui.form
    .fields
      .field
        Filter Word
        = f.text_field :dictionary_word_filter
  = render_filterrific_spinner
= render(partial: '/test/list', locals: { dictionaries: @dictionaries })

Index.js.erb

<% alert("hi"); %>
<% console.log('working Mannnnn') %>
<%  js = escape_javascript(render(partial: '/test/list', locals: { dictionaries: @dictionaries })) %>
$("#filterrific_results").html("<%= js %>");

Index.js.erb не срабатывает.Каждый раз, когда страница загружается, она должна запускать Index.js.erb и показывать предупреждение и console.log, а также показывать html, верно?Или js.erb будет срабатывать только при запросе ajax?

Я использую filterrific gem для целей фильтрации, но файл index.js.erb никогда не запускается.

Даже у меня естьформат JS в моем контроллере.Как это должно быть?я делаю что-то не так?

1 Ответ

0 голосов
/ 30 января 2019

Каждый раз, когда страница загружается, она должна запускать Index.js.erb и показывать предупреждение и console.log, а также показывать право html?

Нет, format.js означает, что ваш контроллер возвращает JS в ответ, когда клиент хочет JS.

Вы должны использовать remote:true, например, если вы хотите JS в ответ.Невозможно отобразить оба, потому что действие контроллера может отвечать только на один HTTP-запрос за раз.

Подробнее об ответах в Rails: https://api.rubyonrails.org/classes/ActionController/MimeResponds.html

И о javascript в Rails: https://guides.rubyonrails.org/working_with_javascript_in_rails.html

...