繁体   English   中英

Angularjs具有多个具有相同控制器的视图,并且只运行一次控制器?

[英]Angularjs having multiple views with same controller and only run the controller once?

现在,我有两个单独的视图,希望能够在一个控制器中进行控制。

但是,此刻,控制器get运行了两次。 无论如何,是否有将多个视图连接到同一个控制器,但仅使控制器运行一次的情况?

我知道我可能已经建立了一个共享$ scope数据的工厂,但目标是不两次收集数据。

.state('cloud', {
    url: '/cloud',
    views: { 
        'main': { templateUrl: 'main.html', controller: 'cloud' },
        'second': { templateUrl: 'second.html', controller: 'cloud' }
    }
})

控制器运行两次,因为在“云”状态下,您定义了两个视图,并且两个视图具有相同的控制器。

因此,当两个视图都加载时,控制器被调用两次。

但是如果您想一次调用控制器,则必须为两个视图定义单独的控制器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM