我正在尝试使用回调创建一个插件,但是我无法将参数传递给回调函数。
我在插件中调用回调如下:
console.log(response.data);
base.options['onFinished'].call(response.data);
正如预期的那样,response.data是用正确的数据传播的,但是在另一端我定义了回调:
$ele.app({
onFinished: function(data) {
console.log(data);
}
);
它被调用,但数据是“未定义的”。
答案 0 :(得分:1)
options.onFinished.call(this,response.data);
答案 1 :(得分:0)
call
的第一个参数应该是被调用函数中this
使用的值,https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/call
base.options['onFinished'].call(this, response.data);
注意您可以选择要设置上下文的内容。通常,您希望它是触发正在处理的事件的元素。该示例假定它也是当前正在执行的插件函数的上下文。