Angularjs 变量未在DOM中显示,但ng repeat有效
我正在设置一个非常基本的AngularJS+Ionic应用程序,遇到了一个奇怪的情况,尽管ng repeat工作正常(例如重复正确的次数),但变量没有在DOM上呈现。此外,我只在我的本地应用程序中看到这种奇怪的行为,但在Plunker上的一个精确副本上正常工作 在Angularjs 变量未在DOM中显示,但ng repeat有效,angularjs,django-templates,angularjs-scope,ionic-framework,Angularjs,Django Templates,Angularjs Scope,Ionic Framework,我正在设置一个非常基本的AngularJS+Ionic应用程序,遇到了一个奇怪的情况,尽管ng repeat工作正常(例如重复正确的次数),但变量没有在DOM上呈现。此外,我只在我的本地应用程序中看到这种奇怪的行为,但在Plunker上的一个精确副本上正常工作 在app.js上,我有: angular.module('sleepExpertChatApp', [ 'ionic', ]) .config(function($stateProvider, $urlRouterProvider)
app.js
上,我有:
angular.module('sleepExpertChatApp', [
'ionic',
])
.config(function($stateProvider, $urlRouterProvider) {
$stateProvider
.state('peoplelist', {
url: '/peoplelist',
templateUrl: 'templates/people-list.html',
controller: 'PeopleListCtrl'
});
$urlRouterProvider.otherwise('/peoplelist');
})
.controller('PeopleListCtrl', function($scope){
$scope.obj = {}
$scope.test = "Mytestvar"
$scope.obj.people = [{name:"leon"},{name:"jeff"},{name:"leon"}];
console.log($scope.obj);
});
和我的html:
<!DOCTYPE html>
<html ng-app="sleepExpertChatApp">
<head>
<script src="http://code.ionicframework.com/1.0.0/js/ionic.bundle.js"></script>
<script src="https://cdn.firebase.com/js/client/2.2.4/firebase.js"></script>
<script src="https://cdn.firebase.com/libs/angularfire/1.1.1/angularfire.min.js"></script>
<script src="/static/chat/main.js"></script>
<link rel="stylesheet" type="text/css" href="http://code.ionicframework.com/1.0.0/css/ionic.min.css">
</head>
<body>
<ion-nav-view></ion-nav-view>
<script id="templates/people-list.html" type="text/ng-template">
<ion-view id="userMessagesView"
view-title="People">
afsdf
<ion-content>
<div ng-repeat="person in obj.people">
<div class="item">
{{person.name}}
</div>
</div>
</ion-content>
</ion-view>
</script>
</body>
</html>
空军自卫队
{{person.name}
这是普朗克:
在本地,简单的ng repeat确实生成了正确数量的元素,但是当试图计算表达式以显示变量时,没有显示任何内容。请参见下面的屏幕截图,注意有3个div与classitem
一样,但它们没有名称
你知道这个看似微不足道的设置会出什么问题吗
啊!我没有意识到我是从Django服务器提供HTML的,因此Django的模板呈现引擎与AngularJS的冲突
简单地用Django的
{%verbatim%}
标记包装我的HTML就解决了我的问题。您是否在服务器上运行本地副本?因为这是angular正常工作所必需的。