Как вызвать параметризованный метод в ngOnInit в Angular? - PullRequest
0 голосов
/ 11 мая 2019

Как вызвать параметризованный метод в ngOnInit в том же компоненте.У меня есть функция onclick (p.key) в html, которая определена в файле ts, но я хочу заполнить ее в ngOnInit.Возможно ли

Файлы: 1. product-filter.component.html

<div class="list-group">
        <a class="list-group-item list-group-item-action"
        [class.active]="!price" routerLink="/">
          All Price
        </a>
        <a *ngFor="let p of price$ | async" 
        class="list-group-item list-group-item-action"
        routerLink="/" (click)="onClick(p.key)"
        [class.active]="price === p.key">     
              {{p.name}}
        </a>
</div>
product-filter.component.ts
onClick(p) 
{
    if(p == '20 - 30') {
       this.productService.getAll().subscribe(products => {
        this.products = products.filter(product => {
        return product.price >= 20 && product.price <= 30
      });      
    });
} 

Теперь я хочу вызвать этот метод в ngOnInit ().Является ли это возможным?.Любые предложения приветствуются

Ответы [ 3 ]

0 голосов
/ 11 мая 2019

Ничто не мешает вам вызывать его из ngOnInit следующим образом:

ngOnInit(){
this.onClick("The initial Id you want to start with");
}
0 голосов
/ 13 мая 2019

вы можете просто подписаться на событие клика и метод, вызываемый при каждом клике,

это пример для кнопки, вы можете поместить его в OnInit

const button = document.getElementById("btn");

const myObservable = fromEvent(button, 'click');

myObservable.subscribe(c => {console.log('clicked')});
0 голосов
/ 11 мая 2019

да, вы можете поместить функцию в ngOnInit () и вызвать ее. В этом случае вам нужно передать начальный параметр как жестко закодированное значение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...