Не могу найти имя 'FB' [ts]
Я пытаюсь инициализировать JavaScript SDK для использования Facebook Graph API в конце концов. Но это продолжает говорить, что Cannot find name FB
, не уверен почему. Вот что я сделал,
componentDidMount() {
(window as any).fbAsyncInit = function() {
FB.init({ // this FB errors out
appId : "my-app-id",
autoLogAppEvents : true,
xfbml : true,
version : "v2.11"
});
};
(function(d: any, s: any, id: any) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return; }
js = d.createElement(s); js.id = id;
js.src = "https://connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, "script", "facebook-jssdk"));
}
PS я использую TSLint
вот почему у меня есть все те typedef any
0 ответов
Установите https://www.npmjs.com/package/@types/facebook-js-sdk и добавьте facebook-js-sdk
в types
в вашем tsconfig.ts
или же tsconfig.app.json
если у вас есть вложенные приложения при использовании Angular CLI.
пример tsconfig.app.json
:
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"outDir": "../../out-tsc/app",
"types": [
"node",
"gapi", // google
"gapi.auth2", // google
"facebook-js-sdk" // facebook
]
},
"exclude": [
"test.ts",
"**/*.spec.ts"
]
}