在' GoRails'之后在我的rails应用中实施通知啧啧

时间:2018-06-15 22:25:17

标签: jquery ruby-on-rails ajax coffeescript

我一直在关注本教程的通知系统,一切顺利,直到我开始编写Coffeescript。这个问题的脚本是:

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

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

handleSuccess: (data) =>
    items = $.map.data, (notification) ->
        "<a class='dropdown-item' href='#{notification.url}>#{notification.action} #{notification.notifiable.type}</a>"

    $("[data-behavior='unread-count']").text(items.length)
    $("[data-behavior='notification-items']").html(items)

jQuery ->
  new Notifications

我得到的错误来自&#34;,&#34;在$ .map.data之后。当我删除它时,我收到一个新错误,这次在控制台中说:

Uncaught TypeError: $.map.data is not a function

The link to the tutorial

它包含一个视频,带有代码的成绩单和一个GitHub repo链接。我认为我的问题与数据&#39;有关。返回一个对象,而不是一个数组。

1 个答案:

答案 0 :(得分:0)

我确定这是一个拼写错误,因为map是一个函数,而data是这个函数的参数。所以以下内容应该是该部分脚本的正确版本:

handleSuccess: (data) =>
   items = $.map data, (notification) ->