我試圖返回此.register()
方法:AngularJS嵌套無極
var deferred = $q.defer();
$cordovaPushV5.initialize($constants.PUSH_OPTIONS).then(function() {
$cordovaPushV5.onError();
$cordovaPushV5.onNotification();
return $cordovaPushV5.register();
}).then(function (push_token) {
deferred.resolve(push_token);
});
return deferred.promise;
但它不會與push_token解決......這似乎是根據我見過的其他問題是正確的,不過,我可以不要讓它正常工作..任何幫助,非常感謝。謝謝!。
你的意思是',然後(樂趣(push_token))'register'完成之前'觸發?還分享'initialize'。 – AndreaM16
夥計們抱歉,我認爲這是我的錯,似乎$ cordova推送通知只會在移動設備上運行時觸發,並且不會在模擬器中運行。我會仔細檢查這一點並回復你。感謝您的幫助。 – user1027620
不要使用'$ q.defer()'來編寫promise。你已經有'$ cordovaPushV5.initialize'的承諾,用'defer'封裝它只會導致錯誤(在這種情況下,你忽略了將錯誤回調傳遞給延遲)。 – teppic