怎麼樣定義一個外部變量?
像這樣:
this.platform.ready().then(() => {
var myToken;
FCMPlugin.getToken(
function (token) {
console.log(token);
myToken= token;
},
function (err) {
console.log('error retrieving token: ' + err);
}
);
console.log(myToken); //I would to pass the token value to here
}
如果爲gettoken是異步,ü可以觸發事件或者(僅回調)做回調
this.platform.ready().then(() => {
FCMPlugin.getToken(
function (token) {
console.log(token);
myCallback(token);
$('html').trigger('tokenReady',token);
},
function (err) {
console.log('error retrieving token: ' + err);
}
);
function myCallback(myToken){
console.log(myToken);
}
}
$('html').on('tokenReady',function(e,token){
myCallback(token);
});
第三個版本:
this.platform.ready().then(() => {
FCMPlugin.getToken(
function (token) {
console.log(token);
myCallback(token);
},
function (err) {
console.log('error retrieving token: ' + err);
}
);
function myCallback(myToken){
console.log(myToken);
}
}
有沒有辦法移動成功回調內的代碼?在我看來,它甚至可能在獲得令牌之前運行你的代碼。 –
可能重複的[如何返回來自異步調用的響應?](http://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an-asynchronous-call) –