Я просмотрел несколько решений для этого, и ни одно из них, похоже, не работает.И это даже страннее.Я решил создать новый проект angular 2 и вставить код, и он работает просто отлично.Но в моем проекте я получаю ошибку в названии.Вот мой код:
import { Component, AfterViewInit, ViewChild, ElementRef } from '@angular/core'
@Component({
selector: 'MouseClick',
templateUrl: './mouseClick.html',
styleUrls: ['./mouseClick.scss']
})
export class MouseClick implements AfterViewInit {
@ViewChild('canvasTest') canvasTest: ElementRef;
ngAfterViewInit() {
console.log('native element', this.canvasTest.nativeElement);
};
, это возвращает с ошибкой: 'Не удается прочитать свойство' nativeElement 'из неопределенного'.
Исходный код (не console.log) внутри был:
let ctx: CanvasRenderingContext2D = this.canvasTest.nativeElement.getContext('2d');
Приведенный выше код выдавал ошибку.Так как это можно исправить?
canvasTest определяется как:
<canvas #canvasTest class="canvas-foreground" style="width:100%;height:715px;" tabindex="1"></canvas>