angularjs - 试图编写一个逻辑来使用浏览器后退按钮单击但在 $on 内部无法找到“this”
问题描述
当单击浏览器后退按钮时,我尝试使用 angularJS 返回上一页,因为默认情况下不会发生这种情况。我写了下面的代码,它抛出了一个错误。
something() {
this.scope.$on("$locationChangeStart",function(){
this.scope.transferTo('dashboard')
//$window.history.back();
});
}
我正在调用一些函数$onInit
。
错误:
TypeError:无法读取 null 的属性“范围”(出现此错误 4 次)
解决方案
经典this
绑定问题。
替换function(){}
为() => {}
或分配this
给变量,例如let self = this
.
推荐阅读
- r - 如果只有第一个观察符合标准,有没有办法对一个组进行子集化?
- javascript - 纯 Javascript - 将数字转换为 %
- python - 通过瘦 python 客户端在 Apache Ignite 中存储原始二进制值
- angular - POST 请求在 Angular CLI 版本 7 中不起作用
- github - 如何在 cpanel 中克隆 github 私有存储库(没有终端或 ssh 的共享主机)?
- ruby-on-rails - 我可以在哪里代表用户(ruby-trello)为 Trello 的请求获取正确的 API 令牌
- javascript - 附加时如何为表单提供购物车的特定 ID
- perl - 我想用 crontab (Centos 7) 自动运行 1 个文件 Demfile.pl。但是 /var/spool/mail/root 发送邮件到日志如下
- java - 如何解决 MalformedJsonException:即使将 JsonReader 设置为 lenient 后仍存在的未终止对象
- c# - 文件观察者可以读取放置在观察路径上的文件夹的内容吗?