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

How do I use ui.bootstrap in a MeanJS controller?

每次我尝试使用 ui.bootstrap 中的任何 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 依赖项以便在此控制器中使用它?

谢谢

ui.bootstrap 默认由 MEAN 4.X 添加。无需在控制器中注册。

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;

});