angular2 Attempted to assign to readonly property.
Component.tsと同じファイル内に、
inferfaiceを定義して、Componentのコンストラクタで値を設定しようとしたら、エラーになった。
EXCEPTION: Error during instantiation of AppComponent!. TypeError: Attempted to assign to readonly property.
エラー。
export class AppComponent { public appStatus: AppStatus; title = 'Tour of Heroes'; constructor() { this.appStatus.isLogin = false; } } export interface AppStatus { isLogin: boolean; aaa: string; }
エラー(その2)。
export class AppComponent implements OnInit{ public appStatus: AppStatus; title = 'Tour of Heroes'; ngOnInit() { this.appStatus.isLogin = false; this.appStatus.aaa = "bbb"; } } export interface AppStatus { isLogin: boolean; aaa: string; }
エラーにならない。
export class AppComponent { public appStatus: AppStatus = { isLogin: false, aaa: "bbb" }; title = 'Tour of Heroes'; } export interface AppStatus { isLogin: boolean; aaa: string; }
http://stackoverflow.com/questions/23412033/typescript-interface-initialization