javascript - Angular 4 : Call angular function from a global listner

标签 javascript angular typescript

我有这个监听器:

this.renderer.listenGlobal('document', 'mousemove', function(e: MouseEvent){

});

例如,我有一个变量,我想从列表器中设置它,例如:

AVariable:number;

HelloWorld() {
    this.renderer.listenGlobal('document', 'mousemove', function(e: MouseEvent){
        this.AVariable = 5;
    });
}   

我将这个错误未定义。 我的问题是:如何从监听器中调用变量/函数?

最佳答案

改变

'mousemove', function(e: MouseEvent){

'mousemove', (e: MouseEvent)=>{

如果您使用functionthis将引用点击事件实例(我猜在这种情况下不使用渲染器)

旧的 js 方法是:

HelloWorld() {
    var self = this;
    this.renderer.listenGlobal('document', 'mousemove', function(e: MouseEvent){
        self.AVariable = 5;
    });
} 

关于javascript - Angular 4 : Call angular function from a global listner,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43783757/

相关文章:

javascript - 将新对象作为参数传递给仅更改 1 个值的函数

javascript - 我是否需要使用三个 javascript 库来通过 ASP.NET MVC 4 进行验证?

javascript - gmaps v0.3 中如何自动打开信息窗口

javascript - lodash throttle nor debounce 在 Angular 5 项目中工作

angular - map 上方的 Bootstrap Angular Leaflet Div

typescript - NestJS - TypeORM - ManyToOne 实体未定义

angular - NgRx 无需订阅即可获取值(value)

javascript - 用于将 2D 多边形横截面转换为 1D 几何图形的工具或库?

javascript - Vega Charts 抛出类型定义错误

http - 如何将 cookie 添加到 typescript 和 angular2 中的任何 http.get 请求?