将 'this' 作用域传递给回调函数
Passing 'this' scope to callback function
我正在尝试将 'this' 传递给回调函数。我知道 "suitable" 的方法是将其设置为一个变量并使用该变量...但这不是很优雅。
var that = this;
chrome.storage.sync.set(this.defaultOptions, function () {
that.loadOptions();
});
我正在尝试其他方法,但我不知道该怎么做。这是我尝试过的:
chrome.storage.sync.set(this.defaultOptions, (function () {
this.loadOptions();
}).call(this));
但是没有成功。我收到此错误:
Error in response to storage.set: Error: Invocation of form
get(object, undefined) doesn't match definition
get(optional string or array or object keys, function callback)
关于 SO 的其他问题我已经尝试调查过,但也有类似的需求,但不完全相同。我怎样才能以最好的方式实现我想要的?
我正在尝试将 'this' 传递给回调函数。我知道 "suitable" 的方法是将其设置为一个变量并使用该变量...但这不是很优雅。
var that = this;
chrome.storage.sync.set(this.defaultOptions, function () {
that.loadOptions();
});
我正在尝试其他方法,但我不知道该怎么做。这是我尝试过的:
chrome.storage.sync.set(this.defaultOptions, (function () {
this.loadOptions();
}).call(this));
但是没有成功。我收到此错误:
Error in response to storage.set: Error: Invocation of form
get(object, undefined) doesn't match definition
get(optional string or array or object keys, function callback)
关于 SO 的其他问题我已经尝试调查过,但也有类似的需求,但不完全相同。我怎样才能以最好的方式实现我想要的?