我的代码如下所示:
interface IConfigService {
admin: {
x: number;
}
class ConfigService implements IConfigService {
admin = this.getDefaultAdminConfigs();
constructor() {
this.admin = this.getDefaultAdminConfigs();
}
private getDefaultAdminConfigs = () => {
return {
x: 99
};
}
}
当我使用AngularJS设置我的configService时,有人能告诉我在构造函数外部或内部设置admin的值有什么区别吗?
答案 0 :(得分:1)
不是你的情况。这只是最后执行的内容的问题。 内联初始化之后执行构造函数体,例如:
class Foo {
admin = 123;
constructor() {
this.admin = 456;
}
}
var foo = new Foo();
console.log(foo.admin); // 456
如果构造函数中有XHR或者在此之前要初始化某个其他属性,那么它可能更相关。
注意:内联初始化也按定义顺序执行。