2013-07-03 41 views
0

看看我的朋友(下面的链接)。不要问我为什么要使用桌子,不幸的是我无法控制。如何访问示波器?

我有两个控制器,我想在最后一个框中访问MainCtrl的作用域模型,我如何在不影响OtherCtrl的情况下做到这一点?我不想套上它们。

http://plnkr.co/edit/P4a8Ag

谢谢! 安德烈亚斯

+0

你的意思是从其他控制器访问范围在一个控制器不筑巢呢? –

+0

是的。我想我没有一个控制器的两个框没有嵌套在MainCtrl OtherCtrl或? ..或者如果我嵌套他们,我怎么让MainCtrl不影响OtherCtrl?我不想从OtherCtrl中的MainCtrl访问任何内容,反之亦然。 – tidelipop

+0

如何控制器的继承?或者甚至更好,如果要共享数据,则将其放入服务中。 –

回答

0

对于所呈现的代码,快速的解决办法是在MainCtrl使用$rootScope而不是它自己的$scope,因为你的“最后一箱”目前正在寻找name$rootScope,因为它不具备的控制器自己的:

app.controller('MainCtrl', function($scope, $rootScope) { 
    $rootScope.name = 'World'; 
}); 

但作为@EduardGamonal建议,服务可能是一个更好的解决方案。

对于两个控制器如何共享存储在服务数据的示例,请参阅https://stackoverflow.com/a/15390245/215945