学习使用angularJS,
我的index.html中有这个特殊的代码。动态类型在上部工作,但注入不起作用。可能出了什么问题?
代码:
<!DOCTYPE html>
<html>
<head>
<title>Test1</title>
</head>
<body ng-app="">
<!-- Dynamic Type -->
<input type="text" ng-model="name1" /><br>
<h1>Hello {{name1}}</h1>
<!-- End dynamic Type -->
<!-- Scope Injection begin-->
<div class="container" ng-controller="myController">
<input type="text" ng-model="naam" /><br>
<h3>Looping</h3>
<ul>
<li data-ng-repeat="cust in customerlist | filter:naam | orderBy:'city'"> {{cust.name | uppercase}} - {{cust.city}} </li>
</ul>
</div>
<script type="text/javascript" src="js/angular.min.js"></script>
<script type="text/javascript">
function myController ($scope) {
$scope.customerlist = [
{name: 'Raj Bannerjee', city: 'Zaire'},
{name: 'Prasun Bannerjee', city: 'Udaipur'},
{name: 'Raj Malhotra', city: 'Dubai'},
{name: 'Prasun Joshi', city: 'Mumbai'}
];
}
</script>
</body>
</html>
答案 0 :(得分:3)
使用全局控制器构造函数从版本1.3角度禁用:
https://github.com/angular/angular.js/commit/3f2232b5a181512fac23775b1df4a6ebda67d018
除了简单的演示之外,使用全局变量没有帮助 对于控制器构造函数。这增加了一种新方法
$controllerProvider
重新启用旧行为,但禁用此功能 默认情况下功能。BREAKING CHANGE:
$controller
将不再寻找控制器window
。查看window
控制器的旧行为是 最初打算用于示例,演示和玩具应用程序。我们找到 允许全球控制器功能鼓励不良做法, 所以我们决定默认禁用此行为。
所以你必须像这样重构它:
angular.module('app',[])
.controller('myController', ['$scope', function($scope) {
$scope.customerlist = [
{name: 'Raj Bannerjee', city: 'Zaire'},
{name: 'Prasun Bannerjee', city: 'Udaipur'},
{name: 'Raj Malhotra', city: 'Dubai'},
{name: 'Prasun Joshi', city: 'Mumbai'}
];
}]);
还可以参考你的模块:
<body ng-app="app">