与另一个控制器AngularJS共享我的JSON数据

时间:2018-03-24 15:22:37

标签: angularjs

我在这里的第一篇文章感觉很棒。

目前我有一个控制器可以获取我的JSON数据并将其放入scope.hotels。

app.controller('ListController1', function($scope, $http){
  $http.get('js/hotels1.json').success(function(data){
    $scope.hotels = data;
  });
});

这里没什么好看的但据我所知,我的第二个控制器无法达到$ scope.hotels。 这是我的第二个控制器

app.controller('BookCtrl', function($scope, $state){
  $scope.Id = $state.params.Id;
})

我将如何做到这一点? 非常感谢!

2 个答案:

答案 0 :(得分:0)

通常,您不应该在控制器内部使用ajax调用。而是呼叫这样做的服务。然后,您也可以将此状态保存在服务中,并且由于它是单例,因此将其注入任何其他控制器将为您提供相同的数据。

答案 1 :(得分:0)

在html中将一个控制器定义为Parent。然后使用$ scope。$来自父节点并使用$ scope。$ on在子控制器中捕获它。从angular docs中了解这些方法。干杯