3

私のJavascript

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

app.controller('DemoCtrl', function ($scope) {
  $scope.expr = "Test"
});
app.controller('Test', function ($scope) {
  $scope.HELLO = "HEllo World";
});

私のマークアップ

<body ng-controller="DemoCtrl">
  <div ng-controller="{{expr}}">{{HELLO}}</div>
</body>

これは機能しません。ドキュメントによると、ng-controller は式を評価できます。何が間違っていますか?

JSBIn リンク( http://jsbin.com/ubevel/13/edit )

4

2 に答える 2

6

コントローラーを関数として ( としてではなくapp.controller('Test')記述します。

JS を次のように変更します。

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

app.controller('DemoCtrl', function ($scope) {
  $scope.expr = Test;
});

function Test($scope) {
     $scope.HELLO = "HEllo World";
}

そしてHTML:

<body ng-controller="DemoCtrl">
  <div ng-controller="expr">{{HELLO}}</div>
</body>

デモJS BIn

于 2013-10-26T09:54:02.853 に答える