如何在 Kotlin React 项目中访问 Facebook 的 JavaScript api



我有一个使用"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

类型安全方式:

  1. 从facebook-js-sdk获取打字稿定义
  2. 使用 ts2kt 将其转换为 Kotlin。生成的文件可能存在一些错误,但通常很容易修复。
  3. 将这些文件添加到项目中。您将获得可以访问external var FB: facebook.FacebookStatic

不安全的方式:

  1. 声明external var FB: dynamic

最新更新