我制作了一个heatMap属性指令,它在调用时传递时没有接收到值。
HeatMap指令:
import {Directive, ElementRef, Input, Renderer, OnInit} from "@angular/core";
@Directive({
selector: '[HeatMap]',
})
export class HeatMapDirective{
@Input('startVal') public startVal: string;
constructor(private el: ElementRef, private renderer: Renderer) {
this.processHeatMap();
}
processHeatMap() {
console.log(this.startVal); // prints undefined.
}
}
HTML元素:
<td class="pad-10" [startVal]="'25'" HeatMap> 25 </td>
我有一个场景,我需要传递字符串和数值,但两者都无法正常工作。我错过了什么吗?
答案 0 :(得分:0)
将您的html更改为:
<td class="pad-10" [startVal]="'25'" HeatMap> 25 </td>
答案 1 :(得分:0)
从构造函数寻址时输入值尚未初始化,像这样从 ngOnInit() 寻址它们:
ngOnInit() {
this.processHeatMap();
}