从ng-repeat元件插入控制器



我有以下问题。我想添加一个控制器,其名称包含在对象中。从ng-repeat接收到的对象

这是数组:

  $scope.components = [
    {
      name: "box",
      controller: "BoxCtrl"
    }
    /*others components*/
  ];
这是HTML代码:
<ul>
  <li ng-repeat="c in components" ng-controller="{{c.controller}}">
      {{c.name}}
  </li>
</ul>

但我有以下错误。

有什么解决办法吗?

ngController指令期望一个控制器实例,但你给了他一个字符串。这应该可以完成工作:

在你的控制器中:

  $scope.components = [
    {
      name: "box",
      controller: BoxCtrl //Remove the quotes
    }
    /*others components*/
  ]

在你看来:

<ul>
  <li ng-repeat="c in components" ng-controller="c.controller">
      {{c.name}}
  </li>
</ul>

编辑:这是一个活塞:http://plnkr.co/edit/sLdZT4UPmgM7Is8SFyrb

最新更新