如何在MeanJS控制器中使用ui.bootstrap?

时间:2016-01-26 22:32:09

标签: angularjs twitter-bootstrap meanjs

每次我尝试使用ui.bootstrap中的任何引导函数时,都会出现以下错误:

Error: [$injector:unpr] Unknown provider: ui.bootstrapProvider <- ui.bootstrap <- CollapseController...

我已经尝试了很多种方法来解决这个问题但我仍然坚持这一点。现在我只是想在评论视图上进行切换开关。这是我的控制器:

angular.module('remarks').controller('CollapseController', ['$scope', 'ui.bootstrap', 'ngAnimate',
  function ($scope) {
    $scope.isCollapsed = false;
  }
]);

这是默认控制器(RemarksController)的附加控制器,我已经注册了备注模块:

ApplicationConfiguration.registerModule('remarks', ['ngAnimate', 'ui.bootstrap']);

最后,这是试图使用此控制器的视图:

<section ng-controller="RemarksController" ng-init="find()">
  <div><h6>Remarks</h6></div>
<div class="container">
  <div class="post-remarks">
    <div class="row">
      <div class="media"  ng-controller="CollapseController">
        <div class="media-heading">
          <button class="btn btn-default btn-xs" type="button" ng-click="isCollapsed = !isCollapsed">
          <span class="glyphicon glyphicon-minus" ng-if="(!isCollapsed)"></span>
          <span class="glyphicon glyphicon-plus" ng-if="isCollapsed"></span> 
          </button> 
        </div>

        <div class="panel-collapse collapse in" uib-collapse="isCollapsed">
          (content)
        </div>

请理解,我可以通过不同的方式找出解决这个问题的方法。但是,我不想。我希望能够使用ui-bootstrap功能,所以我试图找到问题的根源。

如何将ui.bootstrap依赖项注入,以便我可以在此控制器中使用它?

由于

1 个答案:

答案 0 :(得分:1)

默认情况下,MEAN 4.X添加了ui.bootstrap。无需在控制器中注册。

https://github.com/meanjs/mean/blob/master/modules/core/client/app/config.js

我没有看到你的代码有问题.. http://jsfiddle.net/zdyv90w1/1/

var app = angular.module('app', []);

app.controller('CollapseController', function($scope) {
  $scope.isCollapse = false;

});