我刚刚开始使用 Angular 2,遇到以下问题。

下面是一个简单的自定义指令,它应该将字体着色为绿色。但是在 ngOnInit 中,它无法访问字符串“defaultColor”,console.log 返回“undefined”。

任何线索为什么?

干杯!

import {Directive, ElementRef, OnInit} from 'angular2/core';

@Directive({
    selector: '[myHighlight]'
})

export class HighlightDirective implements OnInit{
    private elRef:ElementRef;
    private defaultColor: 'green';

    constructor(elRef:ElementRef){
        this.elRef = elRef;
    }

    ngOnInit():any {
        this.elRef.nativeElement.style.color = this.defaultColor;
        console.log(this.defaultColor)
    }

}

最佳答案

语法错误。

private defaultColor:string = 'green';

该值是使用 = 而不是 : 分配的。 : 是为字段定义一个类型。

关于typescript - angular 2 自定义指令 OnInit,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35837279/

10-11 23:43