Angular 带访问修饰符的构造函数参数与不带访问修饰符的构造函数参数
角度5 为什么在构造函数的签名中,只有使用访问修饰符限定的变量才能在整个类中被识别 例如Angular 带访问修饰符的构造函数参数与不带访问修饰符的构造函数参数,angular,Angular,角度5 为什么在构造函数的签名中,只有使用访问修饰符限定的变量才能在整个类中被识别 例如 constructor(private n: number) { } fn(){ this.n = 6; //Allowed } 但是 因为,当您使用输入参数定义一个构造函数,该参数用私有(或公共)访问修饰符(来自Typescript)标记时,它会告诉您的类创建该属性并进行赋值。以下示例做了相同的事情: constructor(public a, private b) {} 如果不使用acc
constructor(private n: number) {
}
fn(){
this.n = 6; //Allowed
}
但是
因为,当您使用输入参数定义一个构造函数,该参数用私有(或公共)访问修饰符(来自Typescript)标记时,它会告诉您的类创建该属性并进行赋值。以下示例做了相同的事情:
constructor(public a, private b) {}
如果不使用access修饰符(仅限于构造函数的本地修饰符),则需要自己定义该类属性,如第二个示例所示
您可以在该页面上阅读更多信息,以便更好地理解:
下面是同样的问题和有用的答案:
因为,当您使用带有私有(或公共)访问修饰符(来自Typescript)的输入参数定义构造函数时,它会告诉您的类创建该属性并进行赋值。以下示例做了相同的事情:
constructor(public a, private b) {}
如果不使用access修饰符(仅限于构造函数的本地修饰符),则需要自己定义该类属性,如第二个示例所示
您可以在该页面上阅读更多信息,以便更好地理解:
下面是同样的问题和有用的答案:
简单变量范围界定 当你写作时
constructor(x) {}
x
只能在承包商内部访问
使用访问修饰符,可以将其定义为类成员,从而将范围更改为类 简单变量范围 当你写作时
constructor(x) {}
x
只能在承包商内部访问
使用访问修饰符,可以将其定义为类成员,从而将范围更改为类