我已经开始学习Angular并且正在跟随Angular in 60 minutes作为第一步。在第48页,有一个示例代码,如下所示,它是一个simple controller
,用于显示页面中customers
属性的内容。
<!DOCTYPE html>
<html ng-app="">
<head>
<title></title>
</head>
<body>
<div class="container" ng-controller="SimpleController">
<h3>Adding a simple controller</h3>
<ul>
<li ng-repeat="cust in customers">
{{cust.name}} - {{cust.city}}
</li>
</ul>
</div>
<script>
function SimpleController($scope) {
$scope.customers = [
{name: 'John Doe', city: 'New York'},
{name: 'Jane Doe', city: 'Miami'},
{name: 'Moan Doe', city: 'Montreal'}
];
}
</script>
<script src="/usr/local/angular-1.3.16/angular.js"></script>
</body>
</html>
预期输出为:
添加一个简单的控制器
- John Doe - 纽约
- Jane Doe - 迈阿密
- Moan Doe - 蒙特利尔
但我看不到项目符号项目。我已经拔毛了很长一段时间了。我以为在去秃头之前我会问社区。有人能告诉我这段代码有什么问题吗?
答案 0 :(得分:4)
使用版本1.3.16,您不能再仅仅声明全局控制器功能。 相反,定义一个模块和一个控制器:
_sum
在您的html中,使用正确的模块名称添加angular.module('app', []).controller('SimpleController', function ($scope) {
$scope.customers = [
{name: 'John Doe', city: 'New York'},
{name: 'Jane Doe', city: 'Miami'},
{name: 'Moan Doe', city: 'Montreal'}
];
});
:
ng-app
答案 1 :(得分:0)
修复代码的两个项目。
我正在摆弄身边的标签顺序很重要。对<script>
的{{1}}标记引用应首先出现在包含控制器方法的angular.js
标记之前。
正如@ user3906922建议的那样,全局控制器功能在角度1.3.16中没有帮助。我定义了一个模块和控制器,它起作用了。