如何在不同的页面上显示绑定(每个页面都有各自的控制器)?

时间:2014-11-16 16:38:38

标签: javascript angularjs

情况:

- Controller1处理与第1页上的帖子相关的数据。

- Controller2处理与上面帖子的评论相关的数据,第2页。

{{comments.length}}适用于第2页,其中包含“Controller2”但在第1页中无效。我阅读了有关共享服务的内容,并想知道如何在这种情况下插入服务?

我不是试图让两个控制器反映一个相同的对象名称,它将反映2个不同控制器下的2个不同值。我希望在第1页中使{{comments.length}}可行。


Controller1

app.controller('PostsCtrl', function($scope, Post, Auth) {   //insert Shared here

  $scope.posts = Post.all;
  $scope.user = Auth.user;


控制器2

app.controller('PostViewCtrl', function($scope, Post, Auth, $stateParams) { //insert Shared here

    $scope.post = Post.get($stateParams.postId);
    $scope.comments = Post.comments($stateParams.postId);


共享服务

app.service('Shared', function() {
  return {   //notsure what to insert here since theres no data field
  };
});

我注意到在SO上共享2个控制器的服务解决方案:

AngularJS: How can I pass variables between controllers?

这是否是最好的解决方案,还有其他更简单的方法吗?

0 个答案:

没有答案