簡體   English   中英

Coffeescript 變量連接導致“未捕獲的 TypeError 值不是函數”

[英]Coffeescript variable concatenation causes "Uncaught TypeError value is not a function"

我正在 Rails 中創建一個使用 ActionCable/Websockets 的應用程序,我正在使用 coffeescript 用從 ActionCable 中的當前頻道接收到的數據更新用戶瀏覽器。 當我運行此代碼時,我收到錯誤“Uncaught TypeError: data.user.name is not a function”,但是當我交換 data.user.id 和 data.user.name 時,錯誤是針對 data.user.id。 我認為我的語法是錯誤的,但我找不到任何答案。 任何幫助,將不勝感激。 謝謝

received: (data) ->
  $('#players-table').show()
  $('#players-table-body').append '<tr>' + 
    '<td>' + data.user.id + '</td>' + 
    '<td>' + data.user.name +'</td>'

這聽起來很奇怪,但你需要在最后一個+后面加一個空格:

received: (data) ->
  $('#players-table').show()
  $('#players-table-body').append '<tr>' + 
    '<td>' + data.user.id + '</td>' +
    '<td>' + data.user.name + '</td>'

沒有它,它會使data.user.name打開括號並放入+'</td>' ,例如:

return $('#players-table-body').append('<tr>' + '<td>' + data.user.id + '</td>' + '<td>' + data.user.name(+'</td>'));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM