我不确定为什么这个范围变量在我的视图中没有绑定。
HTML:
<body ng-app="example">
<div ng-controller="DemoCtrl">
<h1>Hello {{name}}</h1>
</div>
</body>
JS:
var app = angular.module('example', []);
app.controller('DemoCtrl', function() {
$scope.name = 'World';
});
以下是JSbin示例。
更新:03/21/16
正如@Dsafds在他的answer中所说,我只是忘了包含$scope
参数。希望AngularJS有一个棉绒工具!
答案 0 :(得分:3)
因为您忘记导入$ scope:
var app = angular.module('example', []);
app.controller('DemoCtrl', ["$scope", function($scope) {
$scope.name = 'World';
}]);
那么它会起作用..
var app = angular.module('example', []);
app.controller('DemoCtrl', ["$scope",
function($scope) {
$scope.name = 'World';
}
]);
&#13;
<head>
<script src="https://code.angularjs.org/1.4.9/angular.js"></script>
</head>
<body ng-app="example">
<div ng-controller="DemoCtrl">
<h1>Hello {{name}}</h1>
</div>
</body>
&#13;
答案 1 :(得分:0)
您没有在控制器中使用$scope
作为参数:
var app = angular.module('example', []);
DemoCtrl.$inject = ['$scope']; // <----- Add annotation
app.controller('DemoCtrl', function DemoCtrl($scope) { //<------- Add $scope here
$scope.name = 'World';
});
查看工作Jsbin。
答案 2 :(得分:0)
将 $scope
作为控制器功能中的依赖项传递。
var app = angular.module('example', []);
app.controller('DemoCtrl', function($scope) {
$scope.name = 'World';
});