私有财产无法在角度2中访问此类

时间:2017-07-09 16:58:36

标签: angular angular2-directives

代码在下面

export class HighlightDirective implements OnInit {
    private _defaultColor: 'green';

    ngOnInit():any {
        console.log(this._defaultColor);
    }
}

我无法访问_defaultColor属性

2 个答案:

答案 0 :(得分:1)

我认为最好像这样声明你的变量。

private _defaultColor: string = 'green';

答案 1 :(得分:0)

您的语法错误导致此错误。您将green指定为变量的类型而不是值。

因此,更改为private _defaultColor: string = 'green';将解决该问题。另一点需要指出的是,使用AOT时无法从模板访问private个变量。因此,如果这是一项要求,您还需要将其更改为public或将其删除(因为如果未指定,则默认为公共)。