首页 > 解决方案 > 试图编写一个逻辑来使用浏览器后退按钮单击但在 $on 内部无法找到“this”

问题描述

当单击浏览器后退按钮时,我尝试使用 angularJS 返回上一页,因为默认情况下不会发生这种情况。我写了下面的代码,它抛出了一个错误。

something() {
    this.scope.$on("$locationChangeStart",function(){
       this.scope.transferTo('dashboard')
        //$window.history.back();
    });
}

我正在调用一些函数$onInit

错误:

TypeError:无法读取 null 的属性“范围”(出现此错误 4 次)

标签: angularjs

解决方案


经典this绑定问题。

替换function(){}() => {}或分配this给变量,例如let self = this.


推荐阅读