我的facebook API存在问题,
我想调用一个函数,但我位于Facebook.api函数中,因此我的函数无法识别,因为我封装在Facebook对象中。这是我的代码:
export class MyClass {
constructor(platform:Platform) {
}
function1(number_likes:number) {
var elem = document.getElementById('number_of_likes');
elem.innerHTML = ""+number_likes;
}
query_fan_numbers() {
var pageId = "81221197163?fields=fan_count";
Facebook.api(pageId, null)
.then(function(success) {
this.function1(parseInt(JSON.stringify(success.fan_count))); //Here's the error
}
}
我的错误是这样的:TypeError: Cannot read property 'function1' of null
如何在课堂上调用function1
函数?
答案 0 :(得分:1)
正如@jonrsharpe所说
您可以使用胖箭头:
query_fan_numbers() {
var pageId = "81221197163?fields=fan_count";
Facebook.api(pageId, null)
.then((success)=> {
this.function1(parseInt(JSON.stringify(success.fan_count))); //Here's the error
}
}
或将this
存储在变量中以便稍后使用的普通旧javascript技巧。
query_fan_numbers() {
var that = this;
var pageId = "81221197163?fields=fan_count";
Facebook.api(pageId, null)
.then(function(success) {
that.function1(parseInt(JSON.stringify(success.fan_count))); //Here's the error
}
}