我正在使用带有Nuxt js(Vue js)的facebook sdk,我需要FB.login等待用户将数据发送到facebook ... 这是我的代码,它在服务器端(方法)
async checkLoginState() {
var resulto=await Vue.FB.facebookLogin
if(process.client){
console.log("entro",localStorage.user)
if(localStorage.user){
this.$store.commit("localStorage/User_Loggued",JSON.parse(localStorage.user))
localStorage.removeItem('user');
console.log("local",this.$store.state.localStorage.user)
this.$router.push("/register")
}
}
}
然后我将此函数称为“ Vue.FB.facebookLogin”
var facebookLogin = function() {
checkLoginState( function(data) {
console.log("DATA", data)
if (data.status !== 'connected') {
FB.login( function(response) {
console.log("RESPONSE",response)
if (response.status === 'connected')
getFacebookData();
else {
console.log('Canceló la conexión a Facebook.');}
}, {scope: 'email',return_scopes: true});
}
})
}
var checkLoginState = async function(callback) {
await FB.getLoginStatus(async function(response) {
await callback(response);
});
}
当我在getFacebookData()中时,我需要将数据保存在localstorage中,我使用的是localstorage模块,但是在插件中我无法使用它,因此我创建了一个普通的localstorage,我需要该方法完成后,我将重定向到该页面以在服务器端进行注册