私は自分のアプリケーションの 1 つでangularjs
これを使用するのは初めてです。angularjs
アプリケーションはdjangoを使用して開発されています。しかし、私が現在試していることは、django とは関係ありません (推測します)。次のような非常に単純なテンプレートがあります。
<html xmlns:ng="http://angularjs.org" lang="en" ng-app"><head>
<title>Testing Angular</title>
<link rel="stylesheet" type="text/css" href="/static/css/application.css">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" »="" type="text/javascript">
</script>
<script type="text/javascript" src="/static/js/messages.js"></script>
<script src="http://code.angularjs.org/angular-1.0.0.min.js"></script>
<script src="/static/js/marketing/app.js"></script>
<script src="/static/js/marketing/controllers.js"></script>
</head>
<body>
<div id="content" ng-controller="UserListControl" class="ng-scope">
[[ users.length ]]
</div>
</body>
</html>
以下はそれぞれapp.js
との内容ですcontrollers.js
。
app.js
'use strict';
var newApp = angular.module('newApp', [])
.config(function($interpolateProvider){
// To prevent the conflict of `{{` and `}}` symbols
// between django templating and angular templating we need
// to use different symbols for angular.
$interpolateProvider.startSymbol('[[');
$interpolateProvider.endSymbol(']]');
});
controllers.js
function UserListControl($scope) {
$scope.users = [
{
'name' : 'John Doe',
'type' : 'Platinum',
},
{
'name' : 'Matt Hill',
'type' : 'Gold',
}
];
}
ただし、テンプレート[[ users.length ]]
は実際に長さをレンダリングするのではなく、単純にレンダリングします。
ngRepeat
次のようにディレクティブも試しました。
<p ng-repeat="user in users">
<p>[[user.name]], ([[user.type]])</p>
<p>
と
<tr ng-repeat="i in [0, 1, 2, 3, 4, 5, 6, 7]"><td>[[ i ]]</td></tr>
最初のng-repeat
ディレクティブは次をレンダリングします。
<!-- ngRepeat: usr in users -->
<p ng-repeat="usr in users" class="ng-scope">
</p>
<p ng-repeat="usr in users" class="ng-scope">
</p>
<p><a href="#"></a>()</p>
<p></p>
そして2番目のものはレンダリングします:
<!-- ngRepeat: i in [0, 1, 2, 3, 4, 5, 6, 7] -->
<tr ng-repeat="i in [0, 1, 2, 3, 4, 5, 6, 7]" class="ng-scope"><td>[[ i ]]</td></tr>
<tr ng-repeat="i in [0, 1, 2, 3, 4, 5, 6, 7]" class="ng-scope"><td>[[ i ]]</td></tr>
<tr ng-repeat="i in [0, 1, 2, 3, 4, 5, 6, 7]" class="ng-scope"><td>[[ i ]]</td></tr>
<tr ng-repeat="i in [0, 1, 2, 3, 4, 5, 6, 7]" class="ng-scope"><td>[[ i ]]</td></tr>
<tr ng-repeat="i in [0, 1, 2, 3, 4, 5, 6, 7]" class="ng-scope"><td>[[ i ]]</td></tr>
<tr ng-repeat="i in [0, 1, 2, 3, 4, 5, 6, 7]" class="ng-scope"><td>[[ i ]]</td></tr>
<tr ng-repeat="i in [0, 1, 2, 3, 4, 5, 6, 7]" class="ng-scope"><td>[[ i ]]</td></tr>
<tr ng-repeat="i in [0, 1, 2, 3, 4, 5, 6, 7]" class="ng-scope"><td>[[ i ]]</td></tr>
変数を認識できないのはなぜですか?私は何を間違っていますか?
PS:
コンソールにエラーはありません。
- 角度バージョン: 1.0.0
- ジャンゴ バージョン: 1.4
- Web ブラウザ: Google Chrome 24.0.1312.68
- オペレーティング システム: Ubuntu 12.04