访问 Angular 中的函数 7

Access functions in Angular 7

在我的组件class(HeaderComponent)中, 我想在每次单击 changeBannerArrow() 和 changeBannerImg() 这两个函数时访问 changeBtnColorBg 函数

这些函数是在 HTML 端的 onclick 事件上触发的

export class HeaderComponent implements OnInit {
    imgTotal = 3;
    currentImg = 0;

    imgHdr = [];

    changeBannerImg(imgSelect){
        /* some code here */
        changeBtnColorBg(this.currentImg, imgSelect);
    }


    changeBannerArrow(imgSelect){
        from = this.currentImg;

        /* some code here*/
        to = this.currentImg;

        changeBtnColorBg(from, to);

    }

    changeBtnColorBg(from, to){
        this.imgHdr[from].selected = false; //change back to transparent

        this.imgHdr[to].selected = true; //change bg color
    }
}

但是这个结构产生了

的错误

HeaderComponent.html:15 ERROR ReferenceError: changeBtnColorBg is not defined

有人可以帮忙吗?我是新手

尝试进行以下更改:

export class HeaderComponent implements OnInit {
imgTotal = 3;
currentImg = 0;

imgHdr = [];

changeBannerImg(imgSelect){
    /* some code here */
    this.changeBtnColorBg(this.currentImg, imgSelect); // make change here
}


changeBannerArrow(imgSelect){
    from = this.currentImg;

    /* some code here*/
    to = this.currentImg;

    this.changeBtnColorBg(from, to); // make change here

}

changeBtnColorBg(from, to){
    this.imgHdr[from].selected = false; //change back to transparent

    this.imgHdr[to].selected = true; //change bg color
}

}

changeBtnColorBg(this.currentImg, imgSelect);

this.changeBtnColorBg(this.currentImg, imgSelect); // add 'this'

您似乎错过了 changeBannerArrowchangeBannerImg 方法中的 this

  changeBannerArrow(imgSelect){
        from = this.currentImg;

        /* some code here*/
        to = this.currentImg;

        this.changeBtnColorBg(from, to);
}


   changeBannerImg(imgSelect){
        /* some code here */
        this.changeBtnColorBg(this.currentImg, imgSelect);
    }