Angular 1.x 注销并重新登录后组件绑定不更新

Angular 1.x component bindings don't update after logging out and logging back in

关于 Angular 1.x 前端架构非常差的应用程序上的组件绑定,我有一个奇怪的边缘案例场景。

我有一个名为 searchController 的基本控制器,它的所有子组件都是 searchController.html 上的元素。在 searchController.html 上,"people"、"places" 和 "things" 有五个组件和三个硬编码选项卡。您可以通过多个搜索模式或单击其中一个选项卡执行搜索。单击选项卡执行搜索,默认情况下,我们登陆人员选项卡。

当我登录应用程序并执行搜索时,所有子组件绑定都会更新。当我硬刷新并执行搜索时,所有子组件绑定都会更新。但是,当我注销并随后重新登录并执行搜索时,绑定不会更新。但是,当我单击另一个选项卡时,将执行搜索并更新绑定 DO。问题不在于模态,因为信息是从模态传递到 searchController 文件的。

我想要解决此问题的任何线索,因为任何彻底的更改都会伤害本已脆弱的应用程序。

我建议您尝试以下方法。我们可以像这样使用 DOM 操作和 angular 技术。

    var element = angular.element(document.querySelector('#YOUR_ELEMENT'));
    element.html('HTML_CHANGES');

这不会破坏您现有的功能,如果您可以将其放入单独的服务中 class 那么我们仍然会像这样保留 angular 基本概念。

     angular.module('YOUR_APP').factory('UIServices', function () {
        return {
           changeViewAfterLogin: function () {
              var ele = angular.element(document.querySelector('YOUR_ELEMENT'));
              ele.toggleClass('HTML_CHANGES');
           },
     }

并尝试在你的控制器中调用这个服务函数,然后做任何你想做的事。