【问题标题】:AngularJS nested pages, all gets renderedAngularJS嵌套页面,全部被渲染
【发布时间】:2016-03-22 13:22:00
【问题描述】:

我有一个包含五个子 html 页面的 HTML 页面。 使用 angularjs $rootScope.$broadcast 和 $rootScope.$on 我在页面之间来回发送公共数据。 问题是如果 get/post 方法被任何页面触发,它会呈现所有 slibbing 页面并因此调用每个 ng-event 写在每个 html 页面中,从而产生性能问题。如何避免每个页面都呈现这种情况。

【问题讨论】:

  • 欢迎来到 Stack Overflow!请查看stackoverflow.com/help/asking 以提高您获得好答案的机会。最好包含显示您尝试过的代码。

标签: angularjs


【解决方案1】:

您可以按页面、模型等指定您的事件。例如,

    $rootScope.$emit('sampleEvent', {
       page: 'pageA',
       data: 'your data if there is any'
    });

    $rootScope.$on('sampleEvent', function(event, data) {
   if(data.page === 'pageA') {
// do something here
}
});

如果你要使用 rootscope,也可以使用 emit。由于它是根作用域,它具有与广播相同的效果,但它提供了更好的性能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-08
    • 2017-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-22
    相关资源
    最近更新 更多