2015-03-02 59 views
1

我有一个函数来从后端获取我的数据。一旦数据被加载,我正在调用一个函数,这个函数是作为callback发送的。但我得到的错误为undefined not a function声明的函数不叫

这里是代码:

​​

jsfiddle

回答

1

问题不是没有定义的回调,这是里面dataReceiver其中this是不是指对象你在期待什么。

由于要调用的callback没有上下文,this内部dataReceiver被参照window对象,以便this.tableMaker未定义从而该错误。

一个可能的解决方案是使用Function.bind()到自定义执行上下文传递给回调方法

getDableData(dataAssests.url, this.dataReceiver.bind(this)); 

演示:Fiddle

+0

可以更正/ simplyfiy的办法,那我得到的数据和调用方法。我发现我使用更多的代码获取数据。尤其是避免回调,而是“返回”数据? – 3gwebtrain 2015-03-02 10:42:36