调用异步操作我有一类在ComponentDidMount
javascript和反应的成分
它就像调用一些异步操作:
componentDidMount(){
// var my_call = new APICall()
Promise.resolve(new APICall()).then(console.log(FB))
}
class APICall{
constructor(){
window.fbAsyncInit =() => {
FB.init({
appId : '254258789655',
cookie : true,
xfbml : true,
version : 'v2.5'
});
}
if (typeof(FB) == 'undefined') {
((d, s, id) => {
let js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
})(document, 'script', 'facebook-jssdk');
}
}
}
export default APICall
在这里,但我的电话是不同步的。
只有在我的api
类已被调用后,我如何才能调用then
的值。
这里是给我FB
没有定义的错误。我怎么能先装sdk
,然后调用FB
谢谢
这取决于'APICall'实际做了什么/你应该让它返回一个承诺。 – SLaks
@亚历山大可以请你看看我的更新并给我想法? – gamer
什么是“FB”?这个变量在哪里定义?什么是'sdk'?你根本没有提供清晰的图像,而且看起来你真的失去了范围和执行上下文。帮助我们帮助你。 – Oka