我可以根据控制器ID在页面中使用控制器吗?

时间:2016-11-15 08:46:30

标签: javascript angularjs

我在项目的几个HTML页面中使用相同的控制器。 我的问题是,每个页面链接到另一个页面而不是全部使用相同的控制器,每次打开下一页并且每个页面都使用自己的控制器时,它们会复制它,这意味着,保存在前一个控制器中的所有数据不会在下一页上使用新的重复控制器。

我最近承认每个控制器都有自己的ID($scope.$id),所以:

  • 我可以根据控制器ID请求在HTML页面上使用特定控制器吗?

  • 或者是否有另一种方法可以将控制器的变量存储在我可以使用它们的另一个地方,而不用担心它们会在每个页面上重置?

1 个答案:

答案 0 :(得分:0)

<div ng-controller="myCtrl">
            <div ng-switch on="condition">
                <div ng-switch-when="condition_output_1">
                   <div ng-include="'html_page_1_url.html'"></div>
                </div>
                <div ng-switch-when="condition_output_2">
                     <div ng-include="'html_page_1_url_2.html'"></div>
                </div>
            </div>
    </div>

现在,交换html_page_1_url.htmlhtml_page_2_url.html或任何html

myCtrl这将为所有人提供相同的信息。

在控制器之间传输数据..您可以使用

  • $rootscope
  • services
  • localstorage