【问题标题】:Error in the array declaration in the script file脚本文件中的数组声明错误
【发布时间】:2018-05-07 16:51:39
【问题描述】:

我有一个 Rails 应用程序,我在其中添加了咖啡脚本代码以添加拖放功能。我以前没有使用过咖啡脚本。这是代码

 ready = undefined
 set_positions = undefined

 set_positions = ->
 $('.position').each (i) ->
  $(this).attr 'data-pos', i + 1

ready = ->
 set_positions()
 $('.sortable').sortable()
 $('.sortable').sortable().bind 'sortupdate', (e, ui) ->
    updated_order = []
   set_positions()
   $('.position').each (i) ->
     updated_order.push
       id: $(this).data('id')
       position: i + 1
 $.ajax
   type: 'PUT'
   url: '/portfolios/sort'
   data: {order: updated_order}

  $ ->
    ready()

当我尝试刷新页面时,它在控制台中出现错误。 updated order is not defined。任何帮助将不胜感激。

谢谢

【问题讨论】:

    标签: ruby-on-rails coffeescript


    【解决方案1】:

    错误可能发生在这里

    $.ajax
       type: 'PUT'
       url: '/portfolios/sort'
       data: {order: updated_order}
    

    因为updated_order 未在此范围内定义。要将updated_order 放在范围内,您可以这样做

    ready = ->
      set_positions()
      updated_order = []
      ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-02-11
      • 2012-08-16
      • 2022-10-13
      • 2018-06-25
      • 1970-01-01
      • 1970-01-01
      • 2019-07-26
      • 2012-11-09
      相关资源
      最近更新 更多