要开始我的页面,我会检查 facebook 以获取用户的登录状态。然后我在 window 对象中创建一个命名空间以用于其他 javascript 文件。在我加载任何其他 javascript 之前,我需要创建这个命名空间,否则当我尝试访问它时它将是未定义的。有时它会先完成,有时则不会。我怎样才能确保它每次都正确发生?
.
.
.
FB.getLoginStatus(function(response) {
// store data on the user inside of a namespace
// inside of the window object so it can be accessed
// from anywhere. Use this like '$_SESSION'
console.log('doing it');
window.easyUserData = {
fbRespose: response,
site: <?php echo '"'.$site.'"'; ?>
};
})
};
(function(d) {
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
ref.parentNode.insertBefore(js, ref);
}(document))
</script>
<!-- Load the script "js/main.js" as our entry point for require -->
<script data-main="js/main" src="lib/Require/require.js"></script>
具体来说,我需要:
<script data-main="js/main" src="lib/Require/require.js"></script>
在 facebook 功能完成之前不会发生