自从我开始努力解决这个问题以来已经过了一周。
我想为Facebook机器人创建一个webview,我想要的就是获得用户的psid。一切顺利用普通的javascript:我可以使用window.extAsyncInit()并等待Facebook初始化......但是如果我使用Angular2,我该怎么办?
我尝试将其添加到@Component:
host: {
'(window:extAsyncInit)': 'this.facebookinit($event)'
}
我试图模仿Scroll侦听器在组件中使用它的行为:
@HostListener('window:extAsyncInit', ['$event']) onFbEvent($event){
console.log("called");
}
我尝试了在stackoverflow中找到的所有可能组合......但我仍然被阻止了。 目前我只是为了响应某些点击事件而解决了调用MessengerExtensions的问题,但是现在我真的需要它在webview出现时可用,并且我必须避免未定义问题的唯一方法是使用extAsyncInit。
你能帮帮我吗?
更新 我也尝试使用Renderer2监听并将facebook javascript代码复制到资产文件夹中,并在导入列表下声明MessengerExtension。但仍然没有结果!