ここに問題があります。コンポーネント内にあるボタンをクリックするたびに$ httpコールをしていますコンソールの応答が、ブラウザで私は呼び出しが行われて参照してください。
私は$ timeout関数のコメントを外すときにのみ、データを管理します。
JS
var app = angular.module('myApp', []);
app.controller('mainCtrl', [$scope, $http, $timeout, function($scope, $http, $timeout) {
$scope.navigate = function() {
$scope.getStats();
}
$scope.getStats = function() {
//$timeout(function() {
$http
.get('/scripts/controllers/fda/appSvc.json')
.then(function (response) {
console.log(response.data);
}, function (error) {
console.log(error);
})
//}, 0)
};
$scope.detailedTableCtrl = {
navigate: $scope.navigate
}
}]);
app.component("myBox", {
bindings: {
'detailedTableCtrl': '='
},
controller: function($element) {
},
controllerAs: 'myBox',
templateUrl: "/template",
transclude: true
})
HTML
<div ng-app="myApp" ng-controller="mainCtrl">
<my-box detailed-table-ctrl="detailedTableCtrl"></my-box>
</div><!--end app-->
<!--mybox component-->
<button class="btn btn-default btn-sm" ng-click="myBox.detailedTableCtrl.navigate()">
<span class="glyphicon glyphicon-chevron-left"></span>
<span>Back</span>
</button>
「$ http」 – Amy
を注入している場所が表示されません。その点については、 '$ timeout'を参照してください。 –
私はここで質問に追加するのを忘れていましたが、$ httpと$ timeoutの両方を注入しています –