Свойство 'nativeElement' не существует для типа '() => void' в Angular2 + - PullRequest
0 голосов
/ 27 февраля 2019

Я хочу вызвать событие нажатия, даже не нажимая на кнопку.Таким образом, я следовал структуре, упомянутой в посте - angular2, вручную вызывая событие клика на конкретном элементе

Однако я получаю ошибку:

Property 'nativeElement' does not exist on type '() => void'

, для которой яне найти соответствующей ссылки в Интернете.

Я хочу вызвать кнопку showAccurateGraphs () при нажатии на absoluteExtract ().

Мой код -

приложение.component.html

<button type="button"   (click)="accurateExtract()" class="btn btn-
dark">Accurate Extract</button>

 <button type="button" #accurateExt (click)="showAccurateGraphs()" 
   class="btn btn-dark">Show Accurate API Graph</button>

app.component.ts

   import { Component, OnInit } from '@angular/core';

   import {  ViewChild, ElementRef, Renderer } from '@angular/core'


   constructor(private renderer:Renderer ) {}

   @ViewChild('accurateExt') accurateExt: ElementRef;


   accurateExtract(){


    let event = new MouseEvent('click', {bubbles: true});
    this.renderer.invokeElementMethod(
    this.accurateExtract.nativeElement,'dispatchEvent', [event]);

     }

1 Ответ

0 голосов
/ 27 февраля 2019

Измените свой код следующим образом, потому что invokeElementMethod() больше не доступен в API рендерера 2 в угловом формате.в вашей собственности есть орфографическая ошибка, вы должны изменить this.accurateExtract на this.accurateExt

 accurateExtract(){
    let event = new MouseEvent('click', {bubbles: true});
    this.accurateExt.nativeElement.dispatchEvent(event);
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...