使用其控制器作为服务加载模态

时间:2017-01-16 09:19:36

标签: angularjs lazy-loading

我正在尝试创建一个加载html模板的工厂,然后用新加载的控制器编译html ......

app.factory('$modal', function ($templateProvider, $compile, $ocLazyLoad){
        return {
            open: function(modal) {
                $ocLazyLoad.load([
                  'modals/'+modal+'.html',
                  'modals/'+modal+'.ctrl.js',
                ]).then(function() {
                  // How ?
                })

            }
        }
    });

在使用ocLazyLoad加载控制器然后使用$templateProvider服务后,我还尝试通过$compile获取html。任何时候控制器都不可用的问题!

在配置中,我尝试了以下内容:

app.config(['$stateProvider', '$httpProvider', '$locationProvider', '$urlRouterProvider', '$controllerProvider', '$compileProvider', '$filterProvider', '$provide', '$ocLazyLoadProvider',
    function ($stateProvider, $httpProvider, $locationProvider, $urlRouterProvider, $controllerProvider, $compileProvider, $filterProvider, $provide, $ocLazyLoadProvider) {

        app.controller = $controllerProvider.register;
        app.directive = $compileProvider.directive;
        app.filter = $filterProvider.register;
        app.factory = $provide.factory;
        app.service = $provide.service;
        app.constant = $provide.constant;
        app.value = $provide.value;

    }]);

我的想法是,我应该能够使用angular.module('myApp').controller(...声明刚刚加载的新控制器。也没有成功。

我在这一点上陷入困​​境,以前有人这么做过吗?

0 个答案:

没有答案