我想从2个控制器中获取数据。我从一个控制器获取数据,但没有从另一个控制器获取数据。如何在一个函数中调用两个控制器
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $http) {
$http.get("url")
.then(function(response) {
$scope.pir_data= response.data;
$pir_Status_bit_= response.data.pir_staus;
app.controller('watertankCtrl', function($scope, $http) {
$http.get("url")
.then(function(response) {
$scope.watertank_data = response.data;
$scope.wt_level = response.data.dataFrame;
});
});
html
<div class="col-lg-4" ng-app="myApp" ng-controller="myCtrl">
<div class="our-team-main">
<div class="team-front">
<h4>Door Monitoring</h4>
<a>PIR Smart Security</a>
<hr />
<p align="left">
Door Status- {{pir_Status_bit}} <br />
</p>
</div>
</div>
</div>
<div class="col-lg-4" ng-app="myApp" ng-controller="watertankCtrl">
<p align="left">
Level - {{wt_level}} v<br />
</p>
</div>
</div>
</div>
答案 0 :(得分:0)
处理此类问题的一种干净方法是使用$q
服务和all
方法。发生的情况是您的$http.get
承诺之一在另一个承诺之前返回。您要等待两者返回。