調用異步操作我有一類在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