如何使这个CoffeeScript TurboLinks 5片段友好?

时间:2016-06-19 09:15:33

标签: javascript ruby-on-rails coffeescript turbolinks ruby-on-rails-5

我有以下内容:

$ ->
    $('[data-provider="summernote"]').each ->
      $(this).summernote
        height: 300

然而,这是有效的,我想让TurboLinks 5变得友好。

所以我尝试了以下内容:

$ ->
  ready = ->
    $('data-provider="summernote"]').each ->
      $(this).summernote
        height: 300

  $(document).ready(ready)
  $(document).on('page:load', ready)

但我一直收到这个错误:

Uncaught ReferenceError: ready is not defined

如何解决此问题,以便让原始代码段TL-5友好?

修改1

顺便说一句,我在我的jobs.coffee文件中执行此操作,我知道该文件已包含在我的资产管道中。所以那不是它。

1 个答案:

答案 0 :(得分:3)

在Rails 5(Turbolinks 5)中,turbolinks:load。此外,您无需将事件处理程序包装到“文档就绪”中。

将代码重写为:

ready = ->
  $('data-provider="summernote"]').each ->
    $(this).summernote(height: 300)

$(document).ready(ready)
$(document).on('turbolinks:load', ready)