Angular Typescript中的私有参数
我第一次在Angular Typescript中的私有参数,angular,typescript,Angular,Typescript,我第一次在javascript中学习Angular2并使用类 private参数是什么?为什么不能简单地将其设置为heroService:heroService constructor(private heroService: HeroService) { } 看起来像一个(大约在页面的一半处)。基本上,向构造函数参数添加访问修饰符(public/private/protected/readonly)将自动将该参数分配给同名字段 具体而言,从这些文件中: 参数属性是通过在构造函数参数前加前缀来
javascript
中学习Angular2
并使用类
private
参数是什么?为什么不能简单地将其设置为heroService:heroService
constructor(private heroService: HeroService) { }
看起来像一个(大约在页面的一半处)。基本上,向构造函数参数添加访问修饰符(public/private/protected/readonly)将自动将该参数分配给同名字段
具体而言,从这些文件中:
参数属性是通过在构造函数参数前加前缀来声明的
使用辅助功能修饰符或只读,或两者兼而有之。使用私有
参数属性声明并初始化私有成员;
同样,对于public、protected和readonly也是如此
因此,以下是等效的:
class Foo {
private bar: string;
constructor(bar: string) {
this.bar = bar;
}
}
class Foo {
constructor(private bar: string) {}
}
private将为此类(函数)定义此变量的作用域。 如果您有这个类的实例,public将允许从外部访问。 protected对于抽象超类中的属性很重要。
当我开始使用Typescript时,Typescript页面()上的playplace帮助我理解了真正发生的事情。请记住,TypeScript是JavaScript的糖它是
类{s:s;构造函数(s:s){this.s=s}
的简写。您也可以使用public
、readonly
或protected
(但请不要使用protected
)。@AluanHaddad为什么不使用protected?