javascript - AngularJS - 广播事件后更新指令的 View

标签 javascript angularjs ajax ecmascript-6

在我的 Angular 应用程序(使用 ES6)中,我需要在从其他指令触发一些自定义事件后使用以下代码进行 ajax 调用:

class GridController {
constructor($scope, $rootScope, MyService) {
    this.$scope = $scope;
    this.$rootScope = $rootScope;
    this.MyService = MyService

    this.MyService.getItems(arg1, arg2).then((resp) => {
                this.viewModel= resp;
            });

    this.$rootScope.$on('myEvent', (e, args) => {
        this.MyService.getItems(arg1, args[1]).then((resp) => {
                this.viewModel= resp;
            });
        }
    });
}

问题是在成功 ajax 调用后 View 没有更新。 有什么想法为什么会发生这种情况吗?

最佳答案

可能是模型更新问题,请尝试此操作。

$scope.$apply();

关于javascript - AngularJS - 广播事件后更新指令的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38263517/

相关文章:

javascript - 迭代 JS 对象元素并更改它们

javascript - $scope 变量被视为字符串 - AngularJs

javascript - 如何使用 jQuery/Ajax 更改基于变量的成功函数的输出?

javascript - 调用者无法使用 ajax 从异步方法中获取正确的值

javascript - 使用 Mapbox 添加自定义图标和标记数据

javascript - Nuxt : Dynamic head/meta title is undefined on ssr

javascript - 为什么当状态在 ReactJs 上有对象时我的 onChange 不起作用

javascript - 使用 AngularJS 检测多个选择/下拉菜单的相同项目选择

javascript - AngularJS "controller as"语法错误

javascript - 最高可能的 z-index 是多少?