为什么我的角度代码不起作用
why my angular code doesnt work?
嘿,我是angular的新手,我不能让它工作我做了一个新项目,把angular.min.js文件放在其中,但这个代码不起作用,我不知道为什么它什么都不显示请帮我理解原因。
(function() {
var app = angular.module('list', []);
app.controller('peopleListCtrl', function(){
this.persons = plists;
});
var plists = [
{ name: 'alon', job: 'web dev', home:'nir tzvi' },
{ name: 'ben', job: 'katbamflighter', home:'nir tzvi' },
{ name: 'shiraz', job: 'dentist assistant', home:'hadera west' }
];
})();
<!DOCTYPE html>
<html ng-app="list">
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.min.js"></script>
<script type="text/javascript" src="app.js"></script>
</head>
<body ng-controller="peopleListCtrl as ppl">
<br />
<div ng-repeat="people in ppl.persons">
<h3>
{{people.name}}
{{people.job}}
{{people.home}}
</h3>
</div>
<input type="text" />
<br />
</body>
</html>
请参阅AngularJS控制器中的说明$scope与此
请参阅工作代码。
(function() {
var app = angular.module('list', []);
app.controller('peopleListCtrl', ['$scope',function($scope){
$scope.persons = plists;
}]);
var plists = [
{ name: 'alon', job: 'web dev', home:'nir tzvi' },
{ name: 'ben', job: 'katbamflighter', home:'nir tzvi' },
{ name: 'shiraz', job: 'dentist assistant', home:'hadera west' }
];
})();
<!DOCTYPE html>
<html ng-app="list">
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.min.js"></script>
<script type="text/javascript" src="app.js"></script>
</head>
<body ng-controller="peopleListCtrl">
<br />
<div ng-repeat="people in persons">
<h3>
{{people.name}}
{{people.job}}
{{people.home}}
</h3>
</div>
<input type="text" />
<br />
</body>
</html>
除了上面的答案之外,如果你真的想使用controller as
语法来使用属于控制器对象的方法和变量,而不是传统的$scope
注入,恐怕你需要使用更现代的AngularJS版本。
以下是您使用AngularJS v1.4.7的代码:http://plnkr.co/edit/FIrK0o8493k3VjDBSNtM?p=preview
希望它能澄清一下!
尝试将this.persons替换为控制器中的$scope.persons,$scope将确保您可以使用模板中的数据。
app.controller('peopleListCtrl',['$scope', function($scope){
$scope.persons = plists;
});
您的ng控制器在HTML中应该只是peopleListCtrl
而不是peopleListCtrl as ppl
。
您还需要在控制器中将this.persons
更改为$scope.persons
。
然后将您的HTML更改为:
<!DOCTYPE html>
<html ng-app="list">
<head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.min.js"> </script>
<script type="text/javascript" src="app.js"></script>
</head>
<body ng-controller="peopleListCtrl as ppl">
<br />
<div ng-repeat="people in persons">
<h3>
{{people.name}}
{{people.job}}
{{people.home}}
</h3>
</div>
<input type="text" />
相关文章:
- d3js文本传输-示例代码不起作用
- 滚动动画代码不起作用
- 为什么此验证代码不起作用
- 我的jquery代码不起作用.为什么?
- jquery中的PHP代码不起作用
- 谷歌地图代码不起作用
- 为什么这个代码不起作用?我花了很长时间试图弄清楚这一点
- 除非连接插件,否则 jQuery 代码不起作用
- 简单的JavaScript代码不起作用
- Angular资源对我的代码不起作用
- 在加载javascript之前让页面加载的代码不起作用
- 为什么这个jquery代码不起作用
- 直接从代码笔复制的圆环图代码不起作用
- javascript代码不起作用
- javascript验证代码不起作用
- 代码不起作用.我无法确定这个问题
- 为什么这个js代码不起作用
- 重定向到PDF时像素跟踪代码不起作用
- hasClass没有'我的js代码不起作用
- JavaScript-为什么这段代码不起作用