我是AngularJS世界的新手。我有这个例子来为AngularJS页面定义一个控制器。试图打开页面时,我最终在浏览器中显示原始文本。Angular JS - 控制器未定义
我正在尝试将angular.js(lib/angular.js)下载到本地文件系统。
的页面,如下所示:
<!doctype html>
<html ng-app>
<head>
<script src="lib/angular.js"></script>
<script type="text/javascript">
function MyController($scope) {
$scope.clock = new Date();
var updateClock = function() {
$scope.clock = new Date();
};
setInterval(function() {
$scope.$apply(updateClock);
}, 1000);
updateClock();
};
</script>
</head>
<body>
<div ng-controller="MyController">
<h1>Hello {{clock}}!</h1>
</div>
</body>
</html>
我最终得到如下结果:
您好{{时钟}}!
在浏览器控制台,我得到了错误日志如下:
Error: [ng:areq] Argument 'MyController' is not a function, got undefined
我缺少什么?
最好的问候, 钱德拉。
控制器需要使用'angular.module(“myApp”,[])显式注册。 r(“MyController”,MyController)'从Angular 1.3开始我想。此外,您应该使用'$ interval'来避免执行'$ scope。$ apply',并且您应该取消间隔,否则即使关闭站点后它也会继续。 – 2015-02-11 08:23:38
我使用的示例是使用较低版本),但我已经使用了AngularJS的更高版本(1.3)。我纠正了它,并执行了接受答案中给出的代码。现在一切正常。 – Mouli 2015-02-11 09:33:49