我有一个使用"kotlinFrontend"的项目来创建用kotlin编写的一个非常好的反应前端。如何访问facebook js sdk(通常使用脚本标签完成)
我的 HTML 模板上有此代码,其中包含生成的捆绑包,其中包含
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '503127050093992',
cookie : true,
xfbml : true,
version : 'v3.2'
});
FB.AppEvents.logPageView();
};
(function(d, s, id){
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'));
在我的 kotlin 反应代码中,我如何能够访问创建的 FB obj?
使用 external var FB
类型安全方式:
- 从facebook-js-sdk获取打字稿定义
- 使用 ts2kt 将其转换为 Kotlin。生成的文件可能存在一些错误,但通常很容易修复。
- 将这些文件添加到项目中。您将获得可以访问
external var FB: facebook.FacebookStatic
。
不安全的方式:
- 声明
external var FB: dynamic