IIFE

时间:2017-10-08 13:51:28

标签: javascript ecmascript-6 promise iife revealing-module-pattern

在文件A中,我在IIFE中获得了一个承诺,并更新了一个变量。返回此变量(对其他文件公开)。

var ServiceResponse = (function() {
var cardPattern = null;
getCardPattern().then(function(response) {
    console.info('Successfully fetched card pattern details.');
    cardPattern = response;
    App.init();
},
function(error) {
    console.error('Failed fetching card pattern details!');
});
return {
    cardPattern : cardPattern
}
})();

在文件B中,我试图使用这个返回的变量,但我得到的是null,而不是来自promise响应的更新值。

var validateCreditCard = function(cardNumber, expiryMonth, expiryYear, cvv) {
var creditCardPattern = ServiceResponse.cardPattern;

我确保文件B调用仅在返回promise后完成,但没有运气。为什么呢?

0 个答案:

没有答案