【发布时间】:2013-05-15 15:11:20
【问题描述】:
我有一些具有一些功能和属性的类
exports.textareaWidget = class textareaWidget extends Widget
name = null
getHtml: ->
this.generateHtml(widgetHtml)
然后我创建一个对象并添加到数组中:
obj = new w.textareaWidget()
obj.name = "msgBody"
console.log obj.getHtml() # works
arr.push(obj)
# getting from arr
for field in arr
result = result + field.getHtml()
当我想从数组中获取它时,我可以访问属性(名称),但我不能访问函数(getHtml)。为什么以及如何使它工作? 错误:
TypeError: Object #<Object> has no method 'getHtml'
【问题讨论】:
-
When I want to get it from array我们可以看到那个代码部分吗? -
name = null和getHtml: ->中缺少标识。像这样,这些语句不是类定义的一部分! -
这也很难诊断,因为您没有访问分配给 i 的名称,因此创建了一个新属性...