我是AngularJS World的新手。我有这个例子来为AngularJS页面定义一个控制器。当我试图打开页面时,我最终在浏览器中显示原始文本。
我正在尝试将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>
我最终得到的结果如下:
您好{{clock}}!
在浏览器控制台中,我收到错误日志,如下所示:
Error: [ng:areq] Argument 'MyController' is not a function, got undefined
我错过了什么?
最诚挚的问候, 钱德拉。
答案 0 :(得分:1)
您需要启动角度模块并使用相同的方式创建控制器。
例如:
var app = angular.module('myApp', []);
app.controller('MyController', function($scope) {
$scope.clock = new Date();
var updateClock = function() {
$scope.clock = new Date();
};
setInterval(function() {
$scope.$apply(updateClock);
}, 1000);
updateClock();
});
然后你需要用ng-app =“myApp”在html标记中指定应用程序
所以你的HTML将是:
<!DOCTYPE html>
<html ng-app="myApp">
<head>
<meta charset="utf-8" />
<title>AngularJS Plunker</title>
<script>document.write('<base href="' + document.location + '" />');</script>
<link rel="stylesheet" href="style.css" />
<script data-require="angular.js@1.3.x" src="https://code.angularjs.org/1.3.13/angular.js" data-semver="1.3.13"></script>
<script src="app.js"></script>
</head>
<body>
<div ng-controller="MyController">
<h1>Hello {{clock}}!</h1>
</div>
</body>
</html>