Файл coffescript не выполняется должным образом

Я пытаюсь включить уведомления в свое приложение rails, и я внимательно следую этому руководству: https://gorails.com/episodes/in-app-navbar-notifications

Все работает нормально до того момента, когда я хочу динамически добавлять уведомления в html.

Кажется, что файл coffescript вообще не выполняется. Даже когда я просто хочу console.info, div не выполняется

application.js

navbar.html.erb

<% if current_user.is_a?(User) %>
  <div class = "icon">
    <div class = "btn-group dropleft" data-behavior = "notifications">
      <a class = "dropdown-toggle" data-toggle = "dropdown" aria- 
       haspopup = "true" aria-expanded = "false" href = "#" data- 
       behavior = "notifications-link">
          <i class = "far fa-bell icon-selector"></i><span data- 
            behavior = "unread-count"></span>
          <p>Notifications</p>
      </a>
      <div class = "dropdown-menu" data-behavior = "notification-items">
          <a href = "#" class = "dropdown-item">Action</a>
      </div>
    </div>
  </div>
  ....

notifications.js.coffee

class Notifications
constructor: ->
    @notifications = $("[data-behavior='notifications']")
    @setup() if @notifications.length > 0

setup: ->
    console.info(@notifications)
    $.ajax(
        url: "/notifications.json"
        dataType: "JSON"
        method: "GET"
        success: @handleSuccess
    )

jQuery ->
new Notifications

Вы добавили файл в манифест application.js?

arieljuod 03.09.2018 14:39

Привет ! Не явно, но я включил дерево требований. который загружает все файлы в конвейер ресурсов. Также я знаю, что загружается notifications.js.coffee, потому что если я удалю все и поставлю предупреждающее сообщение, оно выполнится. Есть ли у вас другие идеи? Я рад поделиться своим репо

Emanuel Coen 04.09.2018 12:41

у вас есть ошибка в консоли браузера? если вы поместите строку debugger enywhere, выполнение остановится, и вы сможете отлаживать это шаг за шагом в реальном времени

arieljuod 04.09.2018 14:22

Это то, что у меня нет никаких ошибок: p Я знаю, что страница загружается, и я думаю, что coffeescript даже компилируется в Javascript, потому что я вижу его в файле конвейера ресурсов, но это похоже на то, что на стороне браузера ничего не происходит ...

Emanuel Coen 04.09.2018 19:18

скопирован ли .coffee с имеющимся у вас отступом? потому что конструктор и настройка должны быть с отступом, а new Notifications тоже должен быть с отступом

arieljuod 04.09.2018 20:06

Да, отступ правильный. Поскольку я использую Rails 5, мне также не нужно включать его в свой гем-файл, так как он там по умолчанию, верно? Я включил снимок экрана скомпилированного файла application.js, к которому я получил доступ через локальный: 3000 / активы / application.js, может быть, это поможет? Кстати, спасибо за ваши усилия

Emanuel Coen 04.09.2018 21:31

Я бы добавил строку debugger перед new Notifications (возможно, еще один внутри конструктора и еще один внутри настройки, потому что я не умею отлаживать пошагово, хахаха) и проверять все, что я могу

arieljuod 04.09.2018 22:09

Спасибо, что помогло !! Теперь я знаю, где ошибка! Что-то не так в синтаксисе, если бы вы могли посмотреть, было бы здорово stackoverflow.com/questions/52183528/…

Emanuel Coen 05.09.2018 13:14
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
8
32
0

Другие вопросы по теме