コンポーネント内で、コンポーネント内で変更可能なサービスからオブジェクトをコピーしようとしましたが、サービス内にとどまるべきです。最後はold
を滞在する必要にもかかわらず、初期化後の 参照なしのAngular4コピーオブジェクト?
private test;
public ngOnInit(): {
console.log(this.someService.test.someProperty) //'old'
this.test = this.someService.test;
//not working as well?!
//this.test = Object.assign({}, this.someService.test);
//this.test = Object.create(this.somerService.test);
this.changeTest();
}
public changeTest(): void {
this.test.someProperty = 'new';
}
両方
、this.test.someProperty
など
this.someService.test.someProperty
は
new
に変更されますか?
なぜことが起こっている、そしてどのようにのみthis.test
どのようにサービスからこのオブジェクトを取得していることを証明するために、観察\ – JayDeeEss
なしの公開テスト 'のように定義された通常のオブジェクト:?多分どんな= {...}' –
あなたのローカルテストにそれを割り当てているときにも参照を渡します。ちょっと推測します...あなたのサービスでプライベートな主題を作成するのを避けるために何ができるのですか? – JayDeeEss