rails slim template: Uncaught SyntaxError: Неожиданный токен, если - PullRequest
0 голосов
/ 23 января 2019

У меня тонкий шаблон previews.slim

= render 'previews/demo_areas/skinny_demo_area', p_unit: @p_unit, size: 2

Я добавил javascript в этот файл:

javascript:
  var rotationIndex = 0;
  var auto_rotate = #{@p_unit.auto_rotate_highlight};
  - if auto_rotate
    rotateTextOverAds();

  function rotateTextOverAds() {
    var size_300x250_ads = $('.carousel_ad_unit.size_9700x250 .ad .ad-details');
    $('.carousel_ad_unit.size_9700x250 .ad').each(function () {
      $(this).find('.ad-details').hide();
    });

    rotationIndex += 1;
    if rotationIndex > size_300x250_ads.length
      rotationIndex = 1;
    size_300x250_ads[rotationIndex - 1].style.display = 'block';

    setTimeout(rotateTextOverAds, 2000)
  }

На основании атрибута переменной экземпляра rails @p_unit.auto_rotate_highlight я бы хотел запустить функцию. Но когда я загружаю страницу, мой браузер продолжает показывать:

Uncaught SyntaxError: неожиданный токен, если

Как я могу решить эту проблему?

1 Ответ

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

Вы смешиваете синтаксис javascript и синтаксис ruby ​​(slim) в javascript, если условие выглядит следующим образом:

if (condition) {
  // some code here
}
...