以角度处理两个视图之间的数据

时间:2013-04-01 22:31:28

标签: javascript angularjs routes

我有两个视图,我使用路由来访问它们。我的主视图是使用ListController的列表。

该控制器执行了$http请求并获取了一些数据并在success上执行:$scope.data = response.data;

当我点击列表项时,我的路线转到#/view/:id

我可以在我的其他控制器中使用id获取routeParamsDetailController

由于$scope.dataListController的一部分,我如何在我的$scope.data中访问DetailController

(或至少将$scope.data[some Id]传递给DetailController

修改

app.factory('dataService', function(data)
{
  var data = data;
  return data;
});

答案是将其放在我的DetailController中。我仍然可以使用response.data

presentationService().then(
    function success(response)
    {
        log(response.data);
    },
    function error(response)
    {
        log(response);
    }
);

1 个答案:

答案 0 :(得分:2)

您不应使用范围在控制器之间共享数据。请改用服务。 观看这部短片:http://egghead.io/video/angularjs-sharing-data-between-controllers/

希望它有所帮助。