如何为所有视图创建全局控制器?

时间:2014-09-25 19:03:31

标签: angularjs

我对angular和JS很新,不知道如何实现非常简单的行为。所以...我有一个角度路径模块,我的所有视图都使用ng-view指令进行更改。这是宣言

<body>
    <div class="row main" ng-view> </div> 
<body>

我将所有控制器连接到这些视图。此外,我有一个通用控制器到所有视图,我检查该控制器中的cookie。如何在所有其他视图中自动调用该控制器而不依赖于其他控制器?

我试图把它放进去,但只在索引页面上调用一次。

2 个答案:

答案 0 :(得分:0)

您可以这样做:

<body>
    <div ng-controller="globalController">
        <div class="row main" ng-view> </div> 
    </div>
<body>

http://plnkr.co/edit/k2H8BsTCVh24nbR07GjP?p=preview

答案 1 :(得分:0)

根据定义,控制器用于准备要传递给视图的数据。

我建议你用服务来做这件事。

然后可以通过您所在的任何视图访问此服务。

例如,您可以想象在$ routeProvider.when中实现解析器,它将从此服务读取Cookie。 $ route还会在视图更改,更改或更改时触发事件。试着利用这个,这真的很强大。