所以我在熟悉并学习了基本的JS,HTML和CSS后,通过几个在线网站学习AngularJS。我发现这3个相当简单,但是我对AngularJS有点问题。我真的只是刚开始,但有一个问题,为什么我输入的代码没有返回所需的结果。我有两个窗口(或文件......我不确定这里的正确词汇是什么)打开。一个名为main.js的js和一个名为index.html的索引文件。在main.js中我有:
var app= angular.module('myApp'),[])
app.controller('MyController', function($scope) {
$scope.person = {
name: "Papa Bear"
};
});
在索引文件中我有:
<!doctype html>
<html ng-app='myApp'>
<head>
<script src='js/main.js'></script>
</head>
<body>
<h2> Hi there </h2>
<div ng-controller='MyController'>
{{ person.name }}
</div>
</body>
<html>
“你好”显示得很好。但是(我相当肯定)应该返回的{{person.name}}:Papa Bear只是简单地显示为“{{person.name}}”。我的代码中的错误在哪里,它没有将person.name连接到Papa Bear?
答案 0 :(得分:0)
是的,就像kaveman指出的那样,你必须要包含角度脚本才能工作。尝试将此添加到头部:
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
看看是否有效。
修改强> 另外,我刚注意到(感谢Bhojendra Nepal),这个:
var app= angular.module('myApp'),[])
应该是:
var app = angular.module('myApp',[]);
angular.module将应用程序名称作为第一个参数,并将依赖项数组作为第二个参数,以创建新的角度模块。如果没有依赖项数组的第二个参数,它将返回该名称的现有角度模块。
所以可选地,您可以执行以下操作:
,而不是将模块分配给变量angular.module('myApp',[]);
angular.module('myApp').controller('MyController',function($scope){
$scope.person = {
name: "Papa Bear"
};
});
答案 1 :(得分:0)
var app= angular.module('myApp',[]);
app.controller('MyController',function($ scope){ $ scope.person = { 名称:“爸爸熊” }; });