$ uibModal没有打开,给出错误

时间:2015-11-30 22:25:58

标签: javascript angularjs angular-ui-bootstrap

所以我尝试了一切,每一个例子,我完全不知道什么是错的。每当我尝试加载'$ uibModal'时,我都会收到错误并且我的所有角度代码都会中断。如果我没有正确加载它然后我得到$ uibModal.open错误。这是我的代码。我目前的版本是0.14.3,我今天刚刚下载了该文件。如果它很重要我的角度应用程序是在铁路和我使用凉亭导入一切。

我在js中加载的app.js文件。

var app = angular.module('planoxApp',
['ui.router', 
'nya.bootstrap.select',  // bootstrap select
'ngAnimate',
'ui.bootstrap', 
'main-directives',    
'templates',  
'color.picker', 
'xeditable',   
'restangular',   
'ngDragDrop', 
'angularFileUpload',
'ngStorage'  

// 'mgcrea.ngStrap',
// 'mgcrea.ngStrap.typeahead',
// 'mgcrea.ngStrap.tooltip',
// 'mgcrea.ngStrap.helpers.parseOptions',

])

ctrl加载区,这会显示错误

[$ injector:unpr]未知提供者:$ uibModalProvider< - $ uibModal< - PhotoplanCtrl

app.controller('PhotoplanCtrl',['$http','$scope','$stateParams','$filter','$uibModal','$log',
function($http,$scope, $stateParams,$filter,$uibModal,$log){

但如果我也改变它

 app.controller('PhotoplanCtrl',['$http','$scope','$stateParams','$filter','$log',
function($http,$scope, $stateParams,$filter,$uibModal,$log){

错误消失了,而我们得到了,错误:$ uibModal.open不是一个函数。 (在'$ uibModal.open'中,'$ uibModal.open'未定义)

这是模态代码

 var modalInstance = $uibModal.open({
    animation: $scope.animationsEnabled,
    templateUrl: 'templates/photoplan/ModalPublish.html',
    controller: 'ModalPublishCtrl'
});

如果有人知道什么是错的,我们非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

首先,首先,在我的模态html中你不能拥有ng-controller。显然bootstrap处理它,所以我的新html看起来像。

<div class="modal-header" >
            <h3 class="modal-title">Account Settings</h3>
        </div>
        <div class="modal-body">
            <ul>
                <li>
                  <p>An option to chage password and account username </p>
                  <p>An option to change time settings </p>
                  <p> </p>
                </li>
            </ul>
        </div>
        <div class="modal-footer">
            <button class="btn btn-warning" type="button" ng-click="cancel()">Close</button>
        </div>

由于某些原因,它无法在我的导轨管道中或角度上正确加载,这非常奇怪。我可能会在github上报告一个问题,但是我只是将CDN添加到我的index.html文件中,它开始正常工作。