【发布时间】:2021-05-05 17:02:36
【问题描述】:
我尝试运行单元测试用例,但它抛出错误消息 TypeError: Cannot read property 'elementRef' of undefined
list.component.ts
const elementHeader= this.listTable['elementRef'].nativeElement.querySelectorAll('.adf-datatable-header > .adf-datatable-row')[0];
elementHeader.classList.add("testCheck");
let rowsList = this.listTable.rows;
if(rowsList){
for(let i=0;i<=rowsList.length;i++){
if(i==0){
const elementBody= this.listTable['elementRef'].nativeElement.querySelectorAll('.adf-datatable-body > .adf-datatable-row')[0];
elementBody.classList.add("testCheck");
}
const elementBody= this.listTable['elementRef'].nativeElement.querySelectorAll('.adf-datatable-body > .adf-datatable-row')[i];
if( rowsList[i].dtPurged && rowsList[i].dtPurged != null ){
elementBody.classList.add("testCheck");
}
}
list.component.spec.ts
import { ElementRef, Injectable } from '@angular/core';
let h1: HTMLElement;
let elRef: ElementRef;
beforeEach(() => {
h1 = component.listTable['elementRef'].nativeElement.querySelector('.adf-datatable-body > .adf-datatable-row');
});
请帮我解决这个问题
【问题讨论】:
标签: angular typescript karma-jasmine