微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angularjs – ui bootstrap modal的控制器’没有定义’

我试图使用从ui-bootstrap 0.6的模态指令

这里是从ui-bootstrap页面的工作认plunker:

http://plnkr.co/edit/JGBiBSeRqOnwRhYA9py8?p=preview

现在,我试图使编码风格适合角​​种子风格包括一个应用程序像这样:

http://plnkr.co/edit/Y59rwlcNpQdijKtmjOPy?p=preview

angular.module('MyModal',['ui.bootstrap','MyModal.controllers']);

angular.module('MyModal.controllers',[])
    .controller('ModalDemoCtrl',[ '$scope','$modal','$log',function ($scope,$modal,$log) {
    $scope.items = ['item1','item2','item3'];

    $scope.open = function () {
        var modalinstance = $modal.open({
            templateUrl: 'myModalContent.html',controller: ModalinstanceCtrl,resolve: {
                items: function () {
                return $scope.items;
                }
            }
        });

        modalinstance.result.then(function (selectedItem) {
            $scope.selected = selectedItem;
        },function () {
            $log.info('Modal dismissed at: ' + new Date());
        });
    };
}])
.controller('ModalinstanceCtrl','$modalinstance','items',$modalinstance,items) {
    $scope.items = items;
    $scope.selected = {
        item: $scope.items[0]
    };

    $scope.ok = function () {
        $modalinstance.close($scope.selected.item);
    };

    $scope.cancel = function () {
        $modalinstance.dismiss('cancel');
    };
}]);

但它给一个错误ReferenceError:ModalinstanceCtrl没有定义

我怎么能使这种工作使用这种方式定义控制器?

将控制器名称提供为String,与您在路由定义,指令等中完全一样:
var modalinstance = $modal.open({
        templateUrl: 'myModalContent.html',controller: 'ModalinstanceCtrl',resolve: {
            items: function () {
            return $scope.items;
            }
        }
    });

原文地址:https://www.jb51.cc/angularjs/145281.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐