AngularJS 在第二次渲染时显示大括号

AngularJS showing curly braces on second render

本文关键字:显示 第二次 AngularJS      更新时间:2023-09-26

我在使 $scope.$apply 调用正常工作时遇到一些困难。

一点背景信息。我正在将应用程序的某些部分过渡到使用角度。为了做到这一点,我实际上是将数据注入到 Angular 工厂并触发一个事件,以便将更改应用于已引导的角度范围。

我第一次加载模块工作正常。它将我期望的数据输出到我的模板中,其中我使用 ng-each 标记。我监听一个事件来应用范围,如下所示:

$scope.$on('list:updated', function(event, data){
      $scope.$apply(function(e){
          $scope.list = data;
      });
});

列表变量在我的标记中使用,就像我说的,这在第一次工作得很好。当离开角度部分然后重新访问时,我第二次得到一个未渲染的模板。所以我看到这样的东西

{{ document.Title }}

在我的标记中,就像我在第一次加载时所做的那样,对文档标题进行了标记。我知道您只能引导一次应用程序,因此我这样做是为了说明这一点:

if (Angular.element(document).scope() === undefined){
    bootstrap = Angular.bootstrap(document, ['listModule']);
}
else{
    bootstrap = Angular.element(document).injector();
}

从这个喷油器中,我得到了上面引用的工厂,并触发了相同的列表:更新事件。关于如何进行的任何想法?

请让我知道我可以回答哪些问题来帮助解决这个问题。

非常感谢您能提供的任何帮助!

尝试使用 ng-bind 如下 -

ng-bind='document.Title'

希望,这会对你有所帮助。