当我们给base.html
并且没有将任何值传递给ng-repeat
指令时,指令ng-app="MyApp"
无法正常工作,这对我来说是一种奇怪的行为。我是AngularJS的新手。预期会出现这种情况吗?
请对此有所了解。
ng-app
答案 0 :(得分:1)
仅使用ngInit且没有控制器,指令或服务时,您不需要ngApp。这是角度的工作方式。如果您指定MyApp为ngApp angular将无法找到它,那么您将收到错误。
答案 1 :(得分:0)
只有男性ng-app=''
才能运作
<!DOCTYPE html>
<html>
<head><title>Books Buddy</title></head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.js"></script>
<body ng-app="">
<div ng-init="books=['EffectiveJava','ServletBlackbook','CodeCleaner','HeadFirstJava']">
<ul>
<li ng-repeat="book in books">{{book}}
</li>
</ul>
</div>
</body>
</html>
答案 2 :(得分:0)
这是你的方式(这里我们只用html做所有事情,所以我们不需要自定义应用程序..我们可以说&#34;嘿角度只是做你能做的事情&#34; )
<!DOCTYPE html>
<html>
<head><title>Books Buddy</title></head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<body ng-app>
<div ng-init="books=['EffectiveJava','ServletBlackbook','CodeCleaner','HeadFirstJava']">
<ul>
<li ng-repeat="book in books">{{book}}
</li>
</ul>
</div>
</body>
</html>
这是一种正确的方法(在此我们宣布我们自己的应用程序,因此我们需要为我们的应用程序设置一个名称..)
<!DOCTYPE html>
<html>
<head><title>Books Buddy</title></head>
<body ng-app = "myApp">
<div ng-controller="mainCtrl">
<ul>
<li ng-repeat="book in books">{{book}}</li>
</ul>
</div>
</body>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script type="text/javascript">
var app = angular.module("myApp", []);
app.controller("mainCtrl", function($scope){
$scope.books = ['EffectiveJava','ServletBlackbook','CodeCleaner','HeadFirstJava'];
});
</script>
</html>
答案 3 :(得分:0)
在书籍上使用ng-model
,此处不需要ng-app="myApp"
,因为您没有单独初始化应用程序,上面的代码不是那么动态,所以您可以直接使用ng-app
试试这个:
<!DOCTYPE html>
<html>
<head>
<title>Books Buddy</title>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"> </script>
</head>
<body ng-app >
<div ng-init="books=['EffectiveJava','ServletBlackbook','CodeCleaner','HeadFirstJava']">
<div ng-model="books" >
<ul ng-repeat="book in books" >
<li>{{book}}</li>
</ul>
</div>
</div>
</body>
</html>