的index.html
<div class="center" ng-controller="DescriptionController">
<p>{{perigrafi}}</p></div>
app.js
app.controller('DescriptionController', function($scope, dataPassingService) {
$scope.description = dataPassingService.get();
var perigrafi = $scope.description.Description_en;
var onoma = $scope.description.Name_en;
alert("the description is " + perigrafi);
});
datapassing服务是在控制器之间传递数据的功能。警报工作完美,但是当我尝试在html文件中显示perigrafi时,是否有任何建议?提前谢谢。
答案 0 :(得分:2)
perigrafi必须在$scope
<{1}}
$scope.perigrafi
答案 1 :(得分:0)
Angular.js变量的双向绑定仅适用于在范围内定义的那些变量。由于您已将perigrafi
定义为local variable
,因此它不会像您期望的那样被绑定到html中。按照@rkalita的建议,将变量perigrafi置于$scope
$scope.perigrafi
。
app.controller('DescriptionController', function($scope, dataPassingService) {
$scope.description = dataPassingService.get();
$scope.perigrafi = $scope.description.Description_en;
var onoma = $scope.description.Name_en;
alert("the description is " + $scope.perigrafi);
});
答案 2 :(得分:-1)
您可以直接在html中使用$ scope.description对象,而无需创建新的不必要的变量
$scope.description.Description_en // for var perigrafi
$scope.description.Name_en; // for var onoma
在HTML中你可以这样做
<p>{{description.Description_en}}</p>
<p>{{description.Name_en}}</p>