我想在我的Django应用程序中介绍Angular。我怀疑,我的问题与interpolateProvider
直接相关,这是因为django模板所需要的......但是谁知道。
我的简化版本也存在问题:http://jsfiddle.net/33417xsm/
这是我目前的版本:
<html ng-app="MyApp">
<head>
<script type="text/javascript" src="/static/js/libs/angular/angular.js"></script>
<script type="text/javascript" src="/static/js/app/app.js"></script>
</head>
<body>
<div ng-controller="MyAppController">
[[ 2 + 4 ]]
<p>[[ MyAppController.product.title ]]</p>
</div>
</body>
</html>
file:app.js
(function(){
var app = angular.module('MyApp', []);
app.config(function ($interpolateProvider) {
$interpolateProvider.startSymbol('[[');
$interpolateProvider.endSymbol(']]');
}
);
app.controller('MyAppController', function (){
this.product = gem;
});
var gem = {
'title': 'Inferno'
};
})();
我的结果:
你可以猜到,我也希望显示Inferno
。我做错了什么?
答案 0 :(得分:1)
您的应用配置正常。但我明白了,你并没有明白角度概念。
您必须使用$ scope来绑定数据。你也永远不需要&#34; myController.product&#34;像这样的符号。
我更新了您的代码http://jsfiddle.net/33417xsm/4/
<div ng-app="MyApp" ng-controller="MyAppController">
{{ 2 + 4 }}
<p>{{product.title}}</p>
</div>
var app = angular.module('MyApp', []);
app.controller('MyAppController', function ($scope){
$scope.product = {"title":"product title"};
});