Coffescript не работает, когда он вставлен через document.wrileln

#ruby-on-rails #coffeescript

#ruby-on-rails #coffeescript

Вопрос:

Мой код вставляется в html с помощью этого кода.

1) widget_demo.html.erb

 <script src="//<%= request.host_with_port %>/assets/widget/widget_code.js"></script>
  

2) widget_code.js.erb

 document.writeln("<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js'></script>");
document.writeln("<script src='//<%= Rails.env.production? ? 'alpha.uncoverage.com' : 'localhost:3000' %>/assets/widget/widget_code_internal.js'></script>");
  

3) В зависимости от одного расширения файла widget_code_internal — он работает / не работает.

 widget_code_internal.js - works
widget_code_internal.js.coffee - doesn't
  

Я предполагаю, что это связано с некоторой обработкой кофе в Rails. Но я не понимаю, что не так.

Спасибо за любые идеи.

Комментарии:

1. Браузеры не знают, что такое CoffeeScript, вам нужно перевести его на JavaScript, прежде чем браузер сможет что-либо с ним сделать.

2. и этот перевод может быть предварительной компиляцией ресурсов. Вы должны ссылаться на скомпилированную версию, используя rails rake assets:precompile или другие инструменты