【发布时间】:2013-07-28 18:50:15
【问题描述】:
我正在使用类和 CoffeeScript/JavaScript 进行一系列测试。见以下代码:
class Example
someFunction = ->
alert @getText()
constructor: ->
@text = 'Hello world! ;)'
someFunction()
getText: ->
@text
### Instance ###
example = new Example
这只是一个例子,编译时出现错误:
Uncaught TypeError: Object [object global] has no method 'getText'
你知道我该如何解决这个问题吗? http://jsfiddle.net/P4Xdz/
【问题讨论】:
-
没有
Example.getText(),但有@getText或this.getText()。看看编译好的 JS 就知道是怎么回事了。 -
@elclanrs 我试过了,没用,你也可以试试:jsfiddle.net/uJ9xd
-
您声明了
Example.text,但访问了this.text。看编译代码gist.github.com/elclanrs/6102222 -
@elclanrs 你在这一点上是对的,但这仍然不能解决我的问题。我更新了问题。 jsfiddle.net/P4Xdz
-
我知道你在做什么,但不确定它会起作用。
getText是实例方法,不能这样访问。
标签: javascript class coffeescript private-methods public-method