angularJS中的模态服务

时间:2015-05-21 05:59:46

标签: angularjs templates modal-dialog angular-ui-bootstrap

以下是我的控制器

angular.module('repoApp')
  .controller('loginCtrl', function ($scope,$modal,$state) {
    $scope.awesomeThings = [
      'HTML5 Boilerplate',
      'AngularJS',
      'Karma'
    ];

    $modal.open({     
      templateURL: 'views/modals/test.html',      
    });  
  });

以下是我的模板:

<div class="modal-header">
            <h3 class="modal-title">I'm a modal!</h3>
        </div>

错误是我得到的:

Error: One of template or templateUrl options is required.
    at Object.$modalProvider.$get.$modal.open (http://localhost:9000/bower_components/angular-bootstrap/ui-bootstrap-tpls.js:2353:21)
    at new <anonymous> (http://localhost:9000/scripts/controllers/login/loginCtrl.js:18:12)
    at invoke (http://localhost:9000/bower_components/angular/angular.js:4203:17)
    at Object.instantiate (http://localhost:9000/bower_components/angular/angular.js:4211:27)
    at http://localhost:9000/bower_components/angular/angular.js:8501:28
    at link (http://localhost:9000/bower_components/angular-route/angular-route.js:975:26)
    at invokeLinkFn (http://localhost:9000/bower_components/angular/angular.js:8258:9)
    at nodeLinkFn (http://localhost:9000/bower_components/angular/angular.js:7768:11)
    at compositeLinkFn (http://localhost:9000/bower_components/angular/angular.js:7117:13)
    at publicLinkFn (http://localhost:9000/bower_components/angular/angular.js:6996:30) <div ng-view="" class="ng-scope">

此代码未打开模板,但是当我使用“模板”选项并在那里插入模板标记时,它会显示出来。此模板URL未被触发。我已配置我的gruntfile但我不确定是否还要在那里进行任何更改。 是否需要在index.html中包含任何lib?

1 个答案:

答案 0 :(得分:5)

您确实没有为模式提供任何模板,因为它应该是templateUrl,而不是templateURL

这应该有效:

$modal.open({     
  templateUrl: 'views/modals/test.html',      
});