角度模态不能从工厂解决

时间:2015-03-10 20:59:57

标签: angularjs twitter-bootstrap

我有一个AngularJS工厂,我试图用来创建模态。但是,当我尝试在resolve我的模态实例中使用$modal方法时,控制器会获得一个未解析的提供者。

以下是我从控制器调用工厂的方法:

var modalOptions = {
    template: 'app/common/modalwindow.html',
    data: data
};

modalFactory.openModal(modalOptions);

我的模态工厂现在很简单,它只有一个开放的模态方法:

(function() {
'use strict';

var factoryId = 'modalFactory';
angular.module('app').factory(factoryId, ['$modal', modalFactory]);

function modalFactory($modal) {
    var factory = {
        openModal: openModal
    }

    return factory;

    function openModal(data) {
        $modal.open({
            templateUrl: data.template,
            controller: 'modalInstanceCtrl',
            resolve: {
                modalData: function () {
                    return data.data;
                }
            }
        });
    }
}
})();

然而,当我调用modalInstanceCtrl时会抛出错误。这是我的modalInstanceCtrl

(function () {
'use strict';

var controllerId = 'modalInstanceCtrl';
angular.module('app').controller(controllerId, ['common', 'modalData', modalInstanceCtrl]);

function modalInstanceCtrl(common, modalData) {
    var getLogFn = common.logger.getLogFn;
    var log = getLogFn(controllerId);
    log(modalData);

};
})();

它抛出的错误是:

  

未知提供者:modalDataProvider< - modalData< - modalInstanceCtrl

我认为resolve中的$modal会处理此注入。我在这里假设错了吗?

0 个答案:

没有答案